Wednesday, February 24, 2021

[389-devel] Re: failed to build rpms

Hi Mark,

thanks for the answer, it took me a step further, but I still didn't succed.


Hi William,

yes please update the contributing docs.


Now to the remaining/new problems.

1/3] I think Mark's suggestion does help the build with rust, but the
case where I didn't configure --enable-rust and failed in rust land
shouldn't happen - either rust is an option and everything should work
if disabled or it has to be on and not optional.


2/3] Before receiving Marks hint about updating dependencies I had tried
to build optimized rpms, (to overcome the debug and release mismatch)
but got this strange error.

 /usr/bin/mkdir -p
'/home/elkris/DEV/gh/two/389-ds-base/rpmbuild/BUILDROOT/389-ds-base-2.0.3-20210224gitbda2c53d0.fc32.x86_64/usr/lib64/dirsrv'
 /bin/sh ./libtool   --mode=install /usr/bin/install -c libslapd.la
libldaputil.la libns-dshttpd.la librewriters.la
'/home/elkris/DEV/gh/two/389-ds-base/rpmbuild/BUILDROOT/389-ds-base-2.0.3-20210224gitbda2c53d0.fc32.x86_64/usr/lib64/dirsrv'
libtool:   error: error: cannot install 'libslapd.la' to a directory not
ending in /opt/dirsrv/lib/dirsrv
make[3]: *** [Makefile:4163: install-serverLTLIBRARIES] Error 1


3/3] When using the make command Mark provided everything seemed fin,
until it finally failed again:

 /usr/bin/mkdir -p
'/home/elkris/DEV/gh/two/389-ds-base/rpmbuild/BUILDROOT/389-ds-base-2.0.3-20210224gitbda2c53d0.fc32.x86_64/usr/lib64/dirsrv'
 /bin/sh ./libtool   --mode=install /usr/bin/install -c libslapd.la
libldaputil.la libns-dshttpd.la librewriters.la
'/home/elkris/DEV/gh/two/389-ds-base/rpmbuild/BUILDROOT/389-ds-base-2.0.3-20210224gitbda2c53d0.fc32.x86_64/usr/lib64/dirsrv'
libtool:   error: error: cannot install 'libslapd.la' to a directory not
ending in /opt/dirsrv/lib/dirsrv
make[3]: *** [Makefile:4163: install-serverLTLIBRARIES] Error 1

....

.. contents:: :depth: 2

FAIL: test_slapd
================

==2968306==ASan runtime does not come first in initial library list; you
should either link runtime to your application or manually preload it
with LD_PRELOAD.
FAIL test_slapd (exit status: 1)

+ false
error: Bad exit status from /var/tmp/rpm-tmp.BQqMLc (%check)


Any ideas are welcome,

Best regards,

Ludwig

On 24.02.21 00:35, William Brown wrote:
> Should we update the contributing/build docs to reflect these steps?
>
>> On 24 Feb 2021, at 07:10, Mark Reynolds <mreynolds@redhat.com> wrote:
>>
>> You have to skip the npm audit check "SKIP_AUDIT_CI=1" for now, and the rust stuff is a pain and it is hardcoded to be enabled. You always have to update and download the latest Rust dependencies:
>>
>> SKIP_AUDIT_CI=1 make -f rpm.mk update-cargo-dependencies download-cargo-dependencies rpms
>>
>> HTH,
>>
>> Mark
>>
>> On 2/23/21 1:40 PM, Ludwig Krispenz wrote:
>>> Hi,
>>>
>>> since a long time I was trying to build rpms and failed, here are the issues I run into:
>>>
>>> 1] problem with npm/audit
>>>
>>> I followed the suggestions here: https://www.port389.org/docs/389ds/contributing.html (pushd/npm fix/popd), but this didn't help, only commenting out audit-ci in src/cockpit/389-console/node_modules.mk got me over this
>>>
>>> 2] rust
>>>
>>> 2.1]
>>>
>>> rpm build failed with:
>>>
>>> error: failed to get `concread` as a dependency of package `librslapd v0.1.0 (/home/elkris/DEV/gh/two/389-ds-base/rpmbuild/BUILD/389-ds-base-2.0.3.20210223gitbda2c53d0/src/librslapd)`
>>>
>>> Caused by:
>>> failed to load source for dependency `concread`
>>>
>>> Caused by:
>>> Unable to update registry `https://github.com/rust-lang/crates.io-index`
>>>
>>> Caused by:
>>> failed to update replaced source registry `https://github.com/rust-lang/crates.io-index`
>>>
>>> Caused by:
>>> failed to read root of directory source: /home/elkris/DEV/gh/two/389-ds-base/rpmbuild/BUILD/389-ds-base-2.0.3.20210223gitbda2c53d0/vendor
>>>
>>> Caused by:
>>> No such file or directory (os error 2)
>>> make[1]: *** [Makefile:12715: .../rpmbuild/BUILD/389-ds-base-2.0.3.20210223gitbda2c53d0/rs/rslapd/release/librslapd.a] Error 101
>>>
>>>
>>> ,
>>>
>>> It was right that there wasno rs/rslapd/release/librslapd.a file, not even the directory rs existed. After configuring --enable-rust the directory was created and populated.
>>>
>>> Q1: why does it try to pack rust stuff if it is not enabled ?
>>>
>>> 2.2] Now the directory was there, but I still did get the same error. A closer look showed that it was looking for .../rpmbuild/BUILD/389-ds-base-2.0.3.20210223gitbda2c53d0/rs/rslapd/release/librslapd.a ,but what existed was .../rpmbuild/BUILD/389-ds-base-2.0.3.20210223gitbda2c53d0/rs/rslapd/debug/librslapd.a. Note "debug" -- "release". configure was run with --enable-debug
>>>
>>> Q2: Is there somewhere a hardcoded/default assumpion of "release" ? in the cargo spec?
>>>
>>> Thanks for any suggestions
>>>
>>>
>>> Regards,
>>>
>>> Ludwig
>>> _______________________________________________
>>> 389-devel mailing list -- 389-devel@lists.fedoraproject.org
>>> To unsubscribe send an email to 389-devel-leave@lists.fedoraproject.org
>>> Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
>>> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
>>> List Archives: https://lists.fedoraproject.org/archives/list/389-devel@lists.fedoraproject.org
>>> Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
>> --
>>
>> 389 Directory Server Development Team
>> _______________________________________________
>> 389-devel mailing list -- 389-devel@lists.fedoraproject.org
>> To unsubscribe send an email to 389-devel-leave@lists.fedoraproject.org
>> Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
>> List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
>> List Archives: https://lists.fedoraproject.org/archives/list/389-devel@lists.fedoraproject.org
>> Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
> —
> Sincerely,
>
> William Brown
>
> Senior Software Engineer, 389 Directory Server
> SUSE Labs, Australia
>
_______________________________________________
389-devel mailing list -- 389-devel@lists.fedoraproject.org
To unsubscribe send an email to 389-devel-leave@lists.fedoraproject.org
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/389-devel@lists.fedoraproject.org
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure

No comments:

Post a Comment