Still problems with GPGME with multithread

Albrecht Dreß albrecht.dress@arcor.de
Tue Apr 1 20:55:02 2003


--QTprm0S8XgL7H0Dt
Content-Type: text/plain; format=flowed; charset=ISO-8859-15
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable


Am 01.04.03 01:04 schrieb(en) Laurent Cheylus:
> I test to modify the link order ('-lpthread' before '-lgpgme' at
> compilation) as described in a precedent thread (Albrecht's solution).
> But for me, it doesn't solve the issue :-(

Unfortunately, the situation seems to be more complicated, so please let=20
me add a few points.

(1) I patched the configure file so that libgpgme comes after libpthread=20
in the list of libs. This list, however, is fed into libtool which has its=
=20
own ideas of a proper linking order, and reversed it. I must admit that I=
=20
don't like libtool, but it's a fact that many tools rely on it. I have no=
=20
idea if libtool has a switch in the la file saying "if libfoo is present,=
=20
it must come before me", but if so, libgpgme should support it correctly=20
(aka bug...).

(2) Currently there is no way for the programmer to see if the mt safe=20
initialisation was successful or not. It would be *really* helpful if I=20
could get some information about that (e.g. if gpgme_check_version()=20
returned 0.3.15-MT in this case).

(3) As the programmers will usually know if a program uses mt or not, why=
=20
don't you implement a routine like gpgme_init_threading() which is just a=
=20
no-op if the library figured out itself that it's needed?

(4) The proper linking order itself seems to be only part of the game, as=
=20
Pawel Salek saw libpthread coming *after* libgpgme on RH8 and RH9beta, but=
=20
it *does* work. Maybe a glibc problem?

Just my =A4 0.01...

Cheers, Albrecht.



--=20
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Albrecht Dre=DF  -  Johanna-Kirchner-Stra=DFe 13  -  D-53123 Bonn (German=
y)
        Phone (+49) 228 6199571  -  mailto:albrecht.dress@arcor.de
_________________________________________________________________________
--QTprm0S8XgL7H0Dt
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQA+idOZn/9unNAn/9ERAtxBAKCHMmwmSl68t/u3npb26EwtlWLkFwCgpi9f
PHyZS9ulxcxhxmJ7qmCZe6w=
=RSiX
-----END PGP SIGNATURE-----

--QTprm0S8XgL7H0Dt--