Current status?

Fabian Fagerholm fabbe at paniq.net
Mon Oct 16 06:50:52 UTC 2006


On Mon, 2006-10-16 at 02:05 -0400, Roberto C. Sanchez wrote:
> Vorlon wants to know why it needs to go without LDAP in the first place.
> 
> 02:02 < vorlon> as long as libsasl2 isn't rendered uninstallable by the new
>                 upload, there shouldn't be any need for a staged transition

I'm afraid I don't have the terminology to explain exactly why it
doesn't work, but this is what happens if I try to build cyrus-sasl2
--with-ldap and --enable-ldapdb:

i486-linux-gnu-gcc -Wall -W -Wall -g -O2 -Wl,-z,defs
-o .libs/dbconverter-2 dbconverter-2.o ../sasldb/.libs/libsasldb.al
-lresolv -lresolv ../lib/.libs/libsasl2.so -L/usr/lib/mysql
-L/usr/include/postgresql -L/usr/lib -ldl -lresolv -lcrypto
-lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lkrb5support -lldap -llber
-lcrypt -lopie -ldb-4.4 -lmysqlclient -lpq -lsqlite -ldb-4.4 -lresolv
-lresolv -lresolv
/usr/lib/libldap.so: undefined reference to `sasl_errstring at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_setprop at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_version at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_client_step at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_client_new at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_errdetail at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_encode at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_client_init at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_client_start at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_getprop at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_dispose at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_set_mutex at SASL2'
/usr/lib/libldap.so: undefined reference to `sasl_decode at SASL2'
collect2: ld returned 1 exit status

In "naive" terms, OpenLDAP needs to be linked with cyrus-sasl2 before we
can link cyrus-sasl2 with OpenLDAP. But to be able to build cyrus-sasl2
with LDAP support, we need to link it with OpenLDAP. Chicken-and-egg.

So to break this loop, we build cyrus-sasl2 without LDAP first. Then, we
can build OpenLDAP with cyrus-sasl2, and finally we can build
cyrus-sasl2 with OpenLDAP.

See this message on upstream's mailing list:
http://asg.web.cmu.edu/archive/message.php?mailbox=archive.cyrus-sasl&msg=7500
and be sure to check the replies (the thread is very short, so don't
worry, it's not a lot to read).

Again, to fully explain what is happening, I would need to know some
linker terminology, but I don't. Also, I'm not totally sure what is
meant by a "staged upload" -- I presume this means some kind of
hand-holding, uploading two manually built versions and then hinting
them into the archive at once. I'm not sure this is needed, all I know
is the above.

> Choice a: take our time, ship Etch with code that has barely been
> maintained in two years and has no good instructions
> Choice b: put some speed behind it, ship Etch with code that is properly
> maintained and has no good instructions
> 
> I'd rather take choice b.  Not saying we need to cut corners, just that
> we need to prioritize.  If we can get something that is *at least* as
> good as what we have now, but two years fresher, we are much better off.

Well, there's of course some opinion and personal preference involved,
mine, yours, and everyone else's. For instance, I wouldn't call Cyrus
SASL "properly maintained" -- the people who were most familiar with the
software at CMU have left, and so far there hasn't been any indication
that more resources have been allocated. Perhaps that'll change in the
future.

Anyhow, I'm just voicing my concern and I don't intend to be a blocker
if the team wants to work on getting this into etch. My goal is just to
have the best possible package and that goal stretches beyond etch.

-- 
Fabian Fagerholm <fabbe at paniq.net>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.alioth.debian.org/pipermail/pkg-cyrus-sasl2-debian-devel/attachments/20061016/b1faacf2/attachment-0001.pgp


More information about the Pkg-cyrus-sasl2-debian-devel mailing list