lists.arthurdejong.org
RSS feed

Re: RPM packaging for version 0.8.12

[Date Prev][Date Next] [Thread Prev][Thread Next]

Re: RPM packaging for version 0.8.12



Hi Arthur

Thanks for your help. Commenting the line about reconf makes the script run wihout the previous error (but not finish the rpmbuild, read bellow); if this can help, I am using version 2.59, included in CentOS 5.5.

I have modified the configure options, removing --disable-pam and adding  --disable-sasl --disable-kerberos (we don't use kerberos neither sasl).

I have also removed these lines, that makes the generated packages require pam_ldap.so (because that file will be provided now by nss-pam-ldapd; perhaps should I add a conflict with nss_ldap, which provides now pam_ldap.so?):

# Pull in the pam_ldap module, which is currently bundled with nss_ldap, to
# keep upgrades from removing the module.  We currently disable nss-pam-ldapd's
# own pam_ldap.so until it's more mature.
Requires:    /%{_lib}/security/pam_ldap.so

And added this to the section %files (i am not sure how the %files section works, can anyone confirm this is correct?):

/%{_lib}/security/pam_ldap.so

Anyway, after commenting the line about autoreconf, it doesn't generate the RPMs because of the tests:

mv -f .deps/test_common.Tpo .deps/test_common.Po
gcc -pthread -g -O2 -g -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables   -o test_common test_common.o ../nslcd/cfg.o ../nslcd/log.o ../nslcd/common.o ../nslcd/myldap.o ../nslcd/attmap.o ../nslcd/nsswitch.o ../nslcd/alias.o ../nslcd/ether.o ../nslcd/group.o ../nslcd/host.o ../nslcd/netgroup.o ../nslcd/network.o ../nslcd/passwd.o ../nslcd/protocol.o ../nslcd/rpc.o ../nslcd/service.o ../nslcd/shadow.o ../nslcd/pam.o ../common/libtio.a ../common/libdict.a ../common/libexpr.a ../compat/libcompat.a -lldap -ldl  
make[2]: Leaving directory `/usr/src/redhat/BUILD/nss-pam-ldapd-0.8.12/tests'
make  check-TESTS
make[2]: Entering directory `/usr/src/redhat/BUILD/nss-pam-ldapd-0.8.12/tests'
PASS: test_dict
PASS: test_set
test_tio: writing 11 blocks of 400 bytes (4400 total)
test_tio: reading 400 blocks of 11 bytes (4400 total)
test_tio: writing 11 blocks of 10240 bytes (112640 total)
test_tio: reading 1024 blocks of 110 bytes (112640 total)
test_tio: writing 20 blocks of 5115 bytes (102300 total)
test_tio: reading 5 blocks of 20460 bytes (102300 total)
test_tio: test_tio.c:316: test_timeout_writer: Assertion `end>start' failed.
/bin/sh: line 5: 29939 Aborted                 ${dir}$tst
FAIL: test_tio
PASS: test_expr
PASS: test_getpeercred
PASS: test_cfg
test_myldap.sh: LDAP server ldap://127.0.0.1/ not available for dc=test,dc=tld
SKIP: test_myldap.sh
PASS: test_common
./test_nsscmds.sh: /etc/nslcd.conf: not found
SKIP: test_nsscmds.sh
./test_pamcmds.sh: /etc/nslcd.conf: not found
SKIP: test_pamcmds.sh
===========================================================
1 of 7 tests failed
(3 tests were not run)
Please report to nss-pam-ldapd-users [at] lists.arthurdejong.org
===========================================================
make[2]: *** [check-TESTS] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/nss-pam-ldapd-0.8.12/tests'
make[1]: *** [check-am] Error 2
make[1]: Leaving directory `/usr/src/redhat/BUILD/nss-pam-ldapd-0.8.12/tests'
make: *** [check-recursive] Error 1
error: Bad exit status from /var/tmp/rpm-tmp.13570 (%check)

This is because although I have a LDAP server in the compilation machine (although this can not be always true), my LDAP server has not that naming context (dc=test,dc=tld). How can I disable the tests during the generation of the RPMs?

Regards and thanks again.



2012/11/30 Arthur de Jong <arthur [at] arthurdejong.org>
On Thu, 2012-11-29 at 13:00 +0100, Juan Asensio Sánchez wrote:
> I get this error, after some output (the full output is here
> http://pastebin.com/scK2kyqk):
[...]
> /usr/bin/ld: duplicate version tag `EXPORTED'
[...]
> Any idea why is this happening?

I've had a quick look but there are a few things going. First,
autoreconf is run during the build. The configure script seems to work
slightly different from the configure script shipped in nss-pam-ldapd.

Another difference from a build on a test box is that gcc seems to be
passed a few extra options:
-m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables

The link command that is failing is passed some options twice amongst
which -Wl,--version-script,./exports.glibc which defines which symbols
need to be exported. If this is passed twice the above error can be
expected.

Which versions of autoconf and automake do you have installed? Perhaps
taking out the autoreconf step will help.

Also, you are passing the --disable-pam option to configure. These days
the PAM module in nss-pam-ldapd is a pretty good replacement for the old
pam_ldap so you could consider building it.

--
-- arthur - arthur [at] arthurdejong.org - http://arthurdejong.org --

--
To unsubscribe send an email to
nss-pam-ldapd-users-unsubscribe [at] lists.arthurdejong.org or see
http://lists.arthurdejong.org/nss-pam-ldapd-users/

-- 
To unsubscribe send an email to
nss-pam-ldapd-users-unsubscribe@lists.arthurdejong.org or see
http://lists.arthurdejong.org/nss-pam-ldapd-users/