Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 28000 - cyrus-sasl-2.1.14 does not compile on Pentium II system
Summary: cyrus-sasl-2.1.14 does not compile on Pentium II system
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: x86 Linux
: High major
Assignee: Net-Mail Packages
URL:
Whiteboard:
Keywords:
: 28004 (view as bug list)
Depends on:
Blocks:
 
Reported: 2003-09-05 08:12 UTC by Stephen Torri
Modified: 2004-01-18 19:19 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stephen Torri 2003-09-05 08:12:12 UTC
I have an i586 box that is acting as a firewall hosting various network services
for my internal network (e.g. smtp). I have had no luck in upgrading to 2.1.14.
Here is the output of the build. It is trying to link in libdes.la from
kth-krb-1.2.1. See Acutal Results below.




Reproducible: Always
Steps to Reproduce:
1. emerge -UuvD cyrus-sasl


Actual Results:  

(cd .libs && rm -f libplain.la && ln -s ../libplain.la libplain.la)
/bin/sh ../libtool --mode=link gcc  -Wall -W -Wall -march=pentium2 -O3 -pipe
-L/usr/local/lib -Wl,-rpath,/usr/local/lib  -module -export-dynamic -rpath
/usr/lib/sasl2 -o libanonymous.la  -version-info 2:14:0 anonymous.lo
anonymous_init.lo plugin_common.lo  -lresolv -lresolv
(cd .libs && rm -f libgssapiv2.so.2 && ln -s libgssapiv2.so.2.0.14 libgssapiv2.so.2)
(cd .libs && rm -f libgssapiv2.so && ln -s libgssapiv2.so.2.0.14
libgssapiv2.so)creating libgssapiv2.la
sed: can't read /var/tmp/portage/kth-krb-1.2.1/image/usr/athena/lib/libdes.la:
No such file or directory
libtool: link: `/var/tmp/portage/kth-krb-1.2.1/image/usr/athena/lib/libdes.la'
is not a valid libtool archive
make[2]: *** [libgssapiv2.la] Error 1

Expected Results:  
Build successfully

Portage 2.0.49-r3 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1,
2.4.20-gentoo-r5)=================================================================
System uname: 2.4.20-gentoo-r5 i686 Pentium II (Deschutes)
distcc 2.9 i586-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.2 [enabled]
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium2 -O3 -pipe"
CHOST="i586-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config
/usr/kde/2/share/config /usr/kde/3/share/config /var/bind"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-march=pentium2 -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="sandbox ccache autoaddcvs"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="x86 apm arts crypt encode foomaticdb gif jpeg libg++ libwww mad mikmod mmx
ncurses nls pdflib png spell svga xml2 zlib gdbm berkdb slang readline java
mysql gpm tcpd pam ssl perl python ldap kerberos"
Comment 1 SpanKY gentoo-dev 2003-09-05 09:32:52 UTC
*** Bug 28004 has been marked as a duplicate of this bug. ***
Comment 2 S.Caglar Onur 2003-09-18 06:09:09 UTC
There is a solutin in that thread;

http://forums.gentoo.org/viewtopic.php?t=74214&highlight=cyrus

i tried and its working
Comment 3 Max Kalika (RETIRED) gentoo-dev 2003-09-18 19:21:52 UTC
kerberos 4 support should have been disabled.  I'll take a look at this.
Comment 4 Stephen Torri 2003-11-25 07:51:09 UTC
Is there any progress been made on this? So far my attempts at building cyrus-sasl on my machine (emerge and direct tarball) have failed. I am trying to work out why there is a need for more than on copy of db on the system. I cannot build a direct tarball from CMU for cyrus-sasl because it screams about unresolved symbols from db or if I have kereberos enabled it screams about the problem I reported earlier.
Comment 5 Stephen Torri 2003-11-30 23:14:09 UTC
I took the cyrus-sasl-2.1.14.tar.gz file from /usr/portage/distfiles and
uncompressed it. I then configure it with ./configure --prefix=/usr. Now I
am doing this to discover why the reason why its failing. Now this method of
configuring causes a slightly different but related bug. The problem is with
GSSAPI.

In the plugins directory I get the following file error:

bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I../lib -I../sasldb    -Wall -W -Wall -g -O2 -c gssapi.c
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I../lib -I../sasldb -Wall -W -Wall -g -O2 -c gssapi.c  -fPIC -DPIC -o gssapi.lo
gssapi.c: In function `gssapi_server_mech_step':
gssapi.c:775: `GSS_C_NT_USER_NAME' undeclared (first use in this function)
gssapi.c:775: (Each undeclared identifier is reported only once
gssapi.c:775: for each function it appears in.)

So I figured I might be doing something not supported by the gentoo
configurationg so I looked at cyrus-sasl-2.1.14's ebuild file and redid the
configuration like:

./configure --with-gnu-ld --enable-login --enable-ntlm --with-openssl --with-ldap --with-mysq

No this gives me the same error.

Since I do not have kerberos enabled I don't understand why its attempting to
build the libgssapiv2.la plugin. The Makefile.am is not setup to use makefile
conditionals around any plugin. Particular if gssapi is not enable why build
the plugin?

So I changed the command line to add in gssapi support but no luck the same
error occurs:

./configure --with-gnu-ld --enable-login --enable-ntlm --with-openssl --with-ldap --with-mysql --with-gdbm --enable-gssapi

So I decided to go to cyrus-sasl-2.1.15 and try the above line but add in 
the disabling of otp which I forget. I read the ebuild file for 2.1.14 and
missed the disabling of otp but I do not forsee that as being the issue.

Now it compiles the libgssapiv2.la plugin so I went back and tried configuring 
2.1.14 the same. I get the error that I reported in the beginning. I believe 
this was an error that was fixed in 2.1.15. 

The next problem I get to is in cyrus-sasl-2.1.15/utils. Attempting to build
either saslpasswd2 or sasldblistusers2 given an undefined reference to `db_create_4001'

/bin/sh ../libtool --mode=link gcc  -Wall -W -Wall -g -O2 -L/usr/local/lib -Wl,-rpath,/usr/local/lib  -o dbconverter-2  dbconverter-2.o ../sasldb/libsasldb.la ../lib/libsasl2.la -ldb-3.2 -lresolv  -lresolv -lresolv -lresolv
gcc -Wall -W -Wall -g -O2 -L/usr/local/lib -Wl,-rpath,/usr/local/lib -o .libs/dbconverter-2 dbconverter-2.o ../sasldb/.libs/libsasldb.al -lresolv -lresolv -lresolv ../lib/.libs/libsasl2.so -ldl -lresolv -lresolv -lresolv -lresolv -ldb-3.2 -lresolv -lresolv -lresolv -lresolv -Wl,--rpath -Wl,/usr/local/lib
dbconverter-2.o(.text+0x115): In function `berkeleydb_open':
/home/storri/cyrus-sasl-2.1.15/utils/dbconverter-2.c:214: undefined reference to `db_create_4001'
dbconverter-2.o(.text+0x1b5): In function `berkeleydb_close':
/home/storri/cyrus-sasl-2.1.15/utils/dbconverter-2.c:249: undefined reference to `db_strerror_4001'
dbconverter-2.o(.text+0x258): In function `listusers':
/home/storri/cyrus-sasl-2.1.15/utils/dbconverter-2.c:277: undefined reference to `db_strerror_4001'
../sasldb/.libs/libsasldb.al(db_berkeley.lo)(.text+0x5d): In function `berkeleydb_open':
/home/storri/cyrus-sasl-2.1.15/sasldb/db_berkeley.c:85: undefined reference to `db_create_4001'
../sasldb/.libs/libsasldb.al(db_berkeley.lo)(.text+0x7c):/home/storri/cyrus-sasl-2.1.15/sasldb/db_berkeley.c:102: undefined reference to `db_strerror_4001'
../sasldb/.libs/libsasldb.al(db_berkeley.lo)(.text+0x185): In function `berkeleydb_close':
/home/storri/cyrus-sasl-2.1.15/sasldb/db_berkeley.c:122: undefined reference to `db_strerror_4001'
../sasldb/.libs/libsasldb.al(db_berkeley.lo)(.text+0x33e): In function `_sasldb_getdata':
/home/storri/cyrus-sasl-2.1.15/sasldb/db_berkeley.c:198: undefined reference to `db_strerror_4001'
../sasldb/.libs/libsasldb.al(db_berkeley.lo)(.text+0x55f): In function `_sasldb_putdata':
/home/storri/cyrus-sasl-2.1.15/sasldb/db_berkeley.c:284: undefined reference to `db_strerror_4001'
../sasldb/.libs/libsasldb.al(db_berkeley.lo)(.text+0x5b3):/home/storri/cyrus-sasl-2.1.15/sasldb/db_berkeley.c:296: undefined reference to `db_strerror_4001'
collect2: ld returned 1 exit status
make: *** [dbconverter-2] Error 1

So I am trying to move my way forward in understand why cyrus-sasl-2.1.14 will not compile. Its the default version right now when I do "emerge -UupvD world" and not cyrus-sasl-2.1.15. Let me know if you want me to do anything different.
Comment 6 Stephen Torri 2003-12-04 22:25:09 UTC
Interest revelation is the face that although I get the same linker error
to /var/tmp/portage/kth-krb-1.2.1/image/usr/athena/lib/libdes.la
I do not get the error if I actually going into /var/tmp/portage/cyrus-sasl-2.1.14/work/cyrus-sasl-2.1.14 and built it as root.
The build works fine if I build the cyrus-sasl with gentoo patches. The only place 

A temporary work around appears to be to install via emerge to get the patches
and let it fail during the build. Change into the directory and build and install via 'make install'. Afterwards I did a 'emerge inject dev-libs/cyrus-sasl-2.1.14.

So now I am pass a hurdle but the problem remains. I will see what I can investigate into this problem. I will try to use the debug feature of 'make' and what that gets me.
Comment 7 Max Kalika (RETIRED) gentoo-dev 2004-01-15 13:44:24 UTC
can you give 2.1.17 a try and see if the problems persist?  I reworked some of the dependencies which hopefully fixes things.  thanks.
Comment 8 Stephen Torri 2004-01-18 19:19:20 UTC
The problem is gone. Once I cleared up the 'Killed' messages because the jdk that is installed did not have the binaries configuration setup right for security setting. I used chpax to get the 'Killed' binaries to work. Thanks.