?

Log in

No account? Create an account
problem compiling from CVS tree - LogJam [entries|archive|friends|userinfo]
LogJam

[ website | LogJam ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

problem compiling from CVS tree [Oct. 18th, 2002|12:34 am]
LogJam

logjam

[tcb]
I'm running FreeBSD, and I've built glib2 and gtk2, and run the autogen.sh command.

however, when I type 'make', I get the

gcc -g -O2 -Wall -g -I.. -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DLOCALEDIR=\"/usr/local/share/locale\" -o logjam init.o conf.o conf_xml.o network.o protocol.o md5.o friends.o friendedit.o friendgroups.o friendgroupedit.o checkfriends.o settings.o history_recent.o history.o lj.o security.o about.o menu.o util.o login.o popcalendar.o console.o link.o spawn.o icons.o meta.o ljtypes.o pollcreator.o -Wl,--export-dynamic -L/usr/local/lib -L/usr/X11R6/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangoxft-1.0 -lXft -lXrender -lXext -lfreetype -lpangox-1.0 -lX11 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv -lxml2 -lz -lm -L/usr/X11R6/lib -L/usr/local/lib -L/usr/X11R6/lib -lgtk -lgdk -lgmodule -lglib -lXext -lX11 -lm -lxmms -L/usr/local/lib -lcurl -L/usr/lib -lssl -lcrypto -L/usr/local/lib -lcurl
/usr/libexec/elf/ld: warning: libfreetype.so.6, needed by /usr/X11R6/lib/libXft.so, may conflict with libfreetype.so.9
/usr/libexec/elf/ld: warning: libintl.so.1, needed by /usr/X11R6/lib/libxmms.so, may conflict with libintl.so.4
/usr/local/lib/libgthread12.so.3: undefined reference to `pthread_getspecific'
/usr/local/lib/libgthread12.so.3: undefined reference to `pthread_key_create'
/usr/local/lib/libgthread12.so.3: undefined reference to `pthread_mutex_trylock'
/usr/local/lib/libgthread12.so.3: undefined reference to `pthread_cond_timedwait'
/usr/local/lib/libgthread12.so.3: undefined reference to `pthread_setspecific'
*** Error code 1

Stop in /usr/home/tcb/logjam/src.
*** Error code 1

Stop in /usr/home/tcb/logjam.
*** Error code 1

Stop in /usr/home/tcb/logjam.



Can anyone give me any pointers? Thanks!

(I really want to start using the autosave feature..)
LinkReply

Comments:
From: evan
2002-10-18 05:58 pm (UTC)
Ew, that's no good at all. :)

So, basically:
XMMS uses gtk1.2. LogJam uses gtk2. So compiling against XMMS means that it pulls in both GTK2 and GTK1.2.
It looks like there's some confusion in your gtk1.2 (libgthread1.2) wrt threads...


Try these:
rm config.cache; make distclean; ./configure --without-xmms and see if it compiles.
If it does, try rm config.cache; make distclean; ./configure --with-xmms=runtime.
(The latter tries to dynamically load the XMMS library at runtime, sidestepping all of the linking issues.)


Now, the freetype/xft warnings are a bit more hairy, but hopefully they aren't actually real problems. Xft1 is part of X4.0 and it looks like it's linked against freetype.so.6, while the rest is using freetype.so.9. (Do you have multiple parallel installs of freetype?)
With luck, this won't matter, but if there still is a problem, respond back and I'll see if I can figure something out.
(Reply) (Thread)
[User Picture]From: tcb
2002-10-22 08:35 am (UTC)
thanks for the help!

compiling without xmms support worked fine.

compiling with xmms=runtime died with a freetype error.

yes, apparently I have now three freetype libraries installed. I love FreeBSD. the package management and installation works much better than Linux. However, it appears that either it doesn't, or I don't know how, to deprecate replaced versions of installed software/libraries. Must work on that..

(Reply) (Parent) (Thread)
From: evan
2002-10-22 11:01 am (UTC)
yes, apparently I have now three freetype libraries installed. I love FreeBSD. the package management and installation works much better than Linux.

Hah... was that intentionally contradictory? Whatever suits you, I guess. :)
I'd actually switch to FreeBSD if their package system were better, 'cause I hear their kernel is better.


Most autoconf'd stuff supports a "make uninstall", but I think you need to keep the install directories around for that to work.

I'd suggest just removing the freetype libs that are older, but then you can't know if you have any programs linked with those that'll suddenly break.
You may be able to do something like
ls /usr/bin /usr/X11R6/bin | xargs ldd | grep freetype
(oh, and add the FreeBSD /usr/local/foo dirs, too) to find which binaries depend on which library.
(Reply) (Parent) (Thread)
[User Picture]From: malokai
2002-12-04 04:44 pm (UTC)
add -pthread to your $CFLAGS
(Reply) (Thread)