Date: Wed, 21 Apr 2004 12:29:01 -0400 From: Joe Marcus Clarke <marcus@FreeBSD.org> To: Daniel Eischen <eischen@vigrid.com> Cc: freebsd-hackers@FreeBSD.org Subject: Re: Help: threading problem in non-threaded applications Message-ID: <1082564941.845.6.camel@gyros> In-Reply-To: <Pine.GSO.4.10.10404210916330.1169-100000@pcnet5.pcnet.com> References: <Pine.GSO.4.10.10404210916330.1169-100000@pcnet5.pcnet.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--=-OhXDYIDa9l/9kTwZTw9A Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Wed, 2004-04-21 at 09:18, Daniel Eischen wrote: > On Wed, 21 Apr 2004, Joe Marcus Clarke wrote: >=20 > > On Tue, 2004-04-20 at 17:08, Daniel Eischen wrote: > > > On Tue, 20 Apr 2004, Joe Marcus Clarke wrote: > > >=20 > > > > I have a problem I'm hoping someone can help me with. GTK+ 2.4 > > > > introduced a new file selection GUI which works just fine in thread= ed > > > > and non-threaded applications. However, GNOME 2.6 augmented this d= ialog > > > > with a dynamically loadable threaded shared object. The GNOME vers= ion > > > > is automatically used by all GTK+ apps when run under a GNOME deskt= op if > > > > libgnomeui is installed. > > >=20 > > > Shared libraries shouldn't link with threading libraries > > > unless they actually create threads behind the scenes. > > > Actually, even so, they could force the (unthreaded) > > > applications that link with them to explicitly supply > > > the thread library in the link option. > >=20 > > And that's the case here. The underlying libraries are creating and > > using threads. But what happens when a non-threaded application loads = a > > thread library via dlopen() (which is the case here)? Here's the stack > > trace I see: >=20 > In that case you're going to have to link the application > to a threads library. I had another thought based on your comments. Since -pthread does the right thing in -CURRENT, why don't we make that the default PTHREAD_LIBS? Why do we explicitly link to -lpthread when that causes shared libs to be linked to threading libraries? If we did -pthread universally, this problem would go away because ORBit would do the right thing in the non-threaded case. Joe --=20 Joe Marcus Clarke FreeBSD GNOME Team :: marcus@FreeBSD.org gnome@FreeBSD.org FreeNode / #freebsd-gnome http://www.FreeBSD.org/gnome --=-OhXDYIDa9l/9kTwZTw9A Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (FreeBSD) iD8DBQBAhqFNb2iPiv4Uz4cRAkYdAJwI41mr2iL8QFegqVtiH4TPretAaACfS5Vh 9r6CdbabUn+K74mXUIlgWgQ= =zqGz -----END PGP SIGNATURE----- --=-OhXDYIDa9l/9kTwZTw9A--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1082564941.845.6.camel>