Cannot build against libSDL v1.2.14? |
Steve Ballantyne
Guest
|
Hello everyone,
I am trying to build zsnes against libSDL and I am getting some bogus messages. Everything points to libSDL being built "wrong", but I can't see what's screwed up here. I built SDL from source, version SDL-1.2.14 using nothing in the way of special options or compiler flags. Doing a ./configure on zsnes (snippet): checking for sdl-config... /usr/local/bin/sdl-config checking for SDL - version >= 1.2.0... no *** Could not run SDL test program, checking why... *** The test program failed to compile or link. See the file config.log for the *** exact error that occured. This usually means SDL was incorrectly installed *** or that you have moved SDL since it was installed. In the latter case, you *** may want to edit the sdl-config script: /usr/local/bin/sdl-config configure: error: SDL >= 1.2.0 is required Here is a config log snippet from zsnes: configure:3497: checking for sdl-config configure:3515: found /usr/local/bin/sdl-config configure:3528: result: /usr/local/bin/sdl-config configure:3537: checking for SDL - version >= 1.2.0 configure:3634: gcc -o conftest -pipe -I. -I/usr/local/include -I/usr/include -D__UNIXSDL__ -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -L/usr/local/lib -L/usr/lib -L/usr/local/lib -L/usr/lib conftest.c -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread >&5 /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libiconv.so.2, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libdirectfb-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libfusion-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libdirect-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /usr/local/lib/libSDL.so: undefined reference to `DirectFBCreate' /usr/local/lib/libSDL.so: undefined reference to `DirectFBError' /usr/local/lib/libSDL.so: undefined reference to `DirectFBErrorString' /usr/local/lib/libSDL.so: undefined reference to `DirectFBInit' collect2: ld returned 1 exit status Okay ... so ... why can't it find these libraries? I have every one of them, and they are found with ldconfig ... ldconfig output: [sbox-Z2: ~/zsnes_1_51/src] > ldconfig -v ldconfig: Can't stat /usr/X11R6/lib: No such file or directory ldconfig: Path `/lib' given more than once ldconfig: Path `/usr/lib' given more than once /usr/local/lib: libxml2.so.2 -> libxml2.so.2.7.6 libcharset.so.1 -> libcharset.so.1.0.0 libSDL-1.2.so.0 -> libSDL.so libtiff.so.3 -> libtiff.so.3.9.2 libpng12.so.0 -> libpng12.so.0.41.0 libltdl.so.7 -> libltdl.so.7.2.1 libmad.so.0 -> libmad.so.0.2.1 libpng.so.3 -> libpng.so.3.41.0 libcurl.so.4 -> libcurl.so.4.1.1 libjpeg.so.7 -> libjpeg.so.7.0.0 libtiffxx.so.3 -> libtiffxx.so.3.9.2 libogg.so.0 -> libogg.so.0.6.0 libvorbisenc.so.2 -> libvorbisenc.so.2.0.6 libao.so.2 -> libao.so.2.1.3 libiconv.so.2 -> libiconv.so.2.5.0 liblite.so.3 -> liblite.so.3.0.5 libdirect-1.4.so.0 -> libdirect.so libgif.so.4 -> libgif.so.4.1.6 libvorbis.so.0 -> libvorbis.so.0.4.3 libvorbisfile.so.3 -> libvorbisfile.so.3.3.2 libmpg123.so.0 -> libmpg123.so.0.20.3 libfaad.so.2 -> libfaad.so.2.0.0 libleck.so.3 -> libleck.so.3.0.5 libdirectfb-1.4.so.0 -> libdirectfb.so libid3tag.so.0 -> libid3tag.so.0.3.0 libfreetype.so.6 -> libfreetype.so.6.3.20 libfusion-1.4.so.0 -> libfusion.so /usr/lib: libmenu.so.5 -> libmenu.so.5.7 libpanel.so.5 -> libpanel.so.5.7 libform.so.5 -> libform.so.5.7 libstdc++.so.6 -> libstdc++.so.6.0.8 libncurses.so.5 -> libncurses.so.5.7 /lib: ld-uClibc.so.0 -> ld-uClibc-0.9.29.so librt.so.0 -> librt-0.9.29.so libssp.so.0 -> libssp.so.0.0.0 libmudflapth.so.0 -> libmudflapth.so.0.0.0 libdl.so.0 -> libdl-0.9.29.so libcrypt.so.0 -> libcrypt-0.9.29.so libutil.so.0 -> libutil-0.9.29.so libc.so.0 -> libuClibc-0.9.29.so libmudflap.so.0 -> libmudflap.so.0.0.0 libresolv.so.0 -> libresolv-0.9.29.so libpthread.so.0 -> libpthread-0.9.29.so libgcc_s.so.1 -> libgcc_s.so.1 libm.so.0 -> libm-0.9.29.so libnsl.so.0 -> libnsl-0.9.29.so libthread_db.so.1 -> libthread_db-0.9.29.so /usr/local/BerkeleyDB.4.7/lib: libdb-4.7.so -> libdb.so [sbox-Z2: ~/zsnes_1_51/src] > I have seen this same question pop up several times over the years in various lists and nobody has been able to answer it. If someone could put an end to this riddle, I would appreciate it. :-) Thanks, -- Steve Ballantyne Network Security Analyst SonicWALL CSSA; MCSE/MCDST; CNI-Linux; LPIC-1; CTT+; A+; Network+; Linux+; Server+; I-Net+; Security+ "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius - and a lot of courage - to move in the opposite direction." -- Albert Einstein |
|||||||||||
|
Cannot build against libSDL v1.2.14? |
Ballantyne, Steve D.
Guest
|
Hello everyone,
I am trying to build zsnes against libSDL and I am getting some bogus messages. Everything points to libSDL being built "wrong", but I can't see what's screwed up here. I built SDL from source, version SDL-1.2.14 using nothing in the way of special options or compiler flags. Doing a ./configure on zsnes (snippet): checking for sdl-config... /usr/local/bin/sdl-config checking for SDL - version >= 1.2.0... no *** Could not run SDL test program, checking why... *** The test program failed to compile or link. See the file config.log for the *** exact error that occured. This usually means SDL was incorrectly installed *** or that you have moved SDL since it was installed. In the latter case, you *** may want to edit the sdl-config script: /usr/local/bin/sdl-config configure: error: SDL >= 1.2.0 is required Here is a config log snippet from zsnes: configure:3497: checking for sdl-config configure:3515: found /usr/local/bin/sdl-config configure:3528: result: /usr/local/bin/sdl-config configure:3537: checking for SDL - version >= 1.2.0 configure:3634: gcc -o conftest -pipe -I. -I/usr/local/include -I/usr/include -D__UNIXSDL__ -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -L/usr/local/lib -L/usr/lib -L/usr/local/lib -L/usr/lib conftest.c -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread >&5 /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libiconv.so.2, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libdirectfb-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libfusion-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libdirect-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /usr/local/lib/libSDL.so: undefined reference to `DirectFBCreate' /usr/local/lib/libSDL.so: undefined reference to `DirectFBError' /usr/local/lib/libSDL.so: undefined reference to `DirectFBErrorString' /usr/local/lib/libSDL.so: undefined reference to `DirectFBInit' collect2: ld returned 1 exit status Okay ... so ... why can't it find these libraries? I have every one of them, and they are found with ldconfig ... ldconfig output: [sbox-Z2: ~/zsnes_1_51/src] > ldconfig -v ldconfig: Can't stat /usr/X11R6/lib: No such file or directory ldconfig: Path `/lib' given more than once ldconfig: Path `/usr/lib' given more than once /usr/local/lib: libxml2.so.2 -> libxml2.so.2.7.6 libcharset.so.1 -> libcharset.so.1.0.0 libSDL-1.2.so.0 -> libSDL.so libtiff.so.3 -> libtiff.so.3.9.2 libpng12.so.0 -> libpng12.so.0.41.0 libltdl.so.7 -> libltdl.so.7.2.1 libmad.so.0 -> libmad.so.0.2.1 libpng.so.3 -> libpng.so.3.41.0 libcurl.so.4 -> libcurl.so.4.1.1 libjpeg.so.7 -> libjpeg.so.7.0.0 libtiffxx.so.3 -> libtiffxx.so.3.9.2 libogg.so.0 -> libogg.so.0.6.0 libvorbisenc.so.2 -> libvorbisenc.so.2.0.6 libao.so.2 -> libao.so.2.1.3 libiconv.so.2 -> libiconv.so.2.5.0 liblite.so.3 -> liblite.so.3.0.5 libdirect-1.4.so.0 -> libdirect.so libgif.so.4 -> libgif.so.4.1.6 libvorbis.so.0 -> libvorbis.so.0.4.3 libvorbisfile.so.3 -> libvorbisfile.so.3.3.2 libmpg123.so.0 -> libmpg123.so.0.20.3 libfaad.so.2 -> libfaad.so.2.0.0 libleck.so.3 -> libleck.so.3.0.5 libdirectfb-1.4.so.0 -> libdirectfb.so libid3tag.so.0 -> libid3tag.so.0.3.0 libfreetype.so.6 -> libfreetype.so.6.3.20 libfusion-1.4.so.0 -> libfusion.so /usr/lib: libmenu.so.5 -> libmenu.so.5.7 libpanel.so.5 -> libpanel.so.5.7 libform.so.5 -> libform.so.5.7 libstdc++.so.6 -> libstdc++.so.6.0.8 libncurses.so.5 -> libncurses.so.5.7 /lib: ld-uClibc.so.0 -> ld-uClibc-0.9.29.so librt.so.0 -> librt-0.9.29.so libssp.so.0 -> libssp.so.0.0.0 libmudflapth.so.0 -> libmudflapth.so.0.0.0 libdl.so.0 -> libdl-0.9.29.so libcrypt.so.0 -> libcrypt-0.9.29.so libutil.so.0 -> libutil-0.9.29.so libc.so.0 -> libuClibc-0.9.29.so libmudflap.so.0 -> libmudflap.so.0.0.0 libresolv.so.0 -> libresolv-0.9.29.so libpthread.so.0 -> libpthread-0.9.29.so libgcc_s.so.1 -> libgcc_s.so.1 libm.so.0 -> libm-0.9.29.so libnsl.so.0 -> libnsl-0.9.29.so libthread_db.so.1 -> libthread_db-0.9.29.so /usr/local/BerkeleyDB.4.7/lib: libdb-4.7.so -> libdb.so [sbox-Z2: ~/zsnes_1_51/src] > I have seen this same question pop up several times over the years in various lists and nobody has been able to answer it. If someone could put an end to this riddle, I would appreciate it. :-) Also, I apologize if this message comes through twice. Whatever Sourceforge is using for mailing lists is bouncing or eating anything that comes from a Gmail account (and this has aparently gone on for ages). Thanks, -Steve Ballantyne |
|||||||||||
|
Cannot build against libSDL v1.2.14? |
Ballantyne, Steve D.
Guest
|
Did anyone have thoughts on this? I can’t build anything against SDL. I have tried three packages and they all fail exactly the same way. It appears that SDL is not following symbolic links to the libraries that it’s depending on. But that’s a guess based on what I am finding on this problem from forums and postings to this that go back 5+ years.
Again … this is an OLD problem, without a resolution. Surely someone can help here? Be a hero. Thanks, Steve D. Ballantyne From: [mailto:] On Behalf Of Ballantyne, Steve D. Sent: Saturday, December 12, 2009 10:41 AM To: Subject: [SDL] Cannot build against libSDL v1.2.14? Hello everyone, I am trying to build zsnes against libSDL and I am getting some bogus messages. Everything points to libSDL being built "wrong", but I can't see what's screwed up here. I built SDL from source, version SDL-1.2.14 using nothing in the way of special options or compiler flags. Doing a ./configure on zsnes (snippet): checking for sdl-config... /usr/local/bin/sdl-config checking for SDL - version >= 1.2.0... no *** Could not run SDL test program, checking why... *** The test program failed to compile or link. See the file config.log for the *** exact error that occured. This usually means SDL was incorrectly installed *** or that you have moved SDL since it was installed. In the latter case, you *** may want to edit the sdl-config script: /usr/local/bin/sdl-config configure: error: SDL >= 1.2.0 is required Here is a config log snippet from zsnes: configure:3497: checking for sdl-config configure:3515: found /usr/local/bin/sdl-config configure:3528: result: /usr/local/bin/sdl-config configure:3537: checking for SDL - version >= 1.2.0 configure:3634: gcc -o conftest -pipe -I. -I/usr/local/include -I/usr/include -D__UNIXSDL__ -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -L/usr/local/lib -L/usr/lib -L/usr/local/lib -L/usr/lib conftest.c -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread >&5 /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libiconv.so.2, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libdirectfb-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libfusion-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /scratchbox/compilers/arm-gcc4.1-uclibc20061004/lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/bin/ld: warning: libdirect-1.4.so.0, needed by /usr/local/lib/libSDL.so, not found (try using -rpath or -rpath-link) /usr/local/lib/libSDL.so: undefined reference to `DirectFBCreate' /usr/local/lib/libSDL.so: undefined reference to `DirectFBError' /usr/local/lib/libSDL.so: undefined reference to `DirectFBErrorString' /usr/local/lib/libSDL.so: undefined reference to `DirectFBInit' collect2: ld returned 1 exit status Okay ... so ... why can't it find these libraries? I have every one of them, and they are found with ldconfig ... ldconfig output: [sbox-Z2: ~/zsnes_1_51/src] > ldconfig -v ldconfig: Can't stat /usr/X11R6/lib: No such file or directory ldconfig: Path `/lib' given more than once ldconfig: Path `/usr/lib' given more than once /usr/local/lib: libxml2.so.2 -> libxml2.so.2.7.6 libcharset.so.1 -> libcharset.so.1.0.0 libSDL-1.2.so.0 -> libSDL.so libtiff.so.3 -> libtiff.so.3.9.2 libpng12.so.0 -> libpng12.so.0.41.0 libltdl.so.7 -> libltdl.so.7.2.1 libmad.so.0 -> libmad.so.0.2.1 libpng.so.3 -> libpng.so.3.41.0 libcurl.so.4 -> libcurl.so.4.1.1 libjpeg.so.7 -> libjpeg.so.7.0.0 libtiffxx.so.3 -> libtiffxx.so.3.9.2 libogg.so.0 -> libogg.so.0.6.0 libvorbisenc.so.2 -> libvorbisenc.so.2.0.6 libao.so.2 -> libao.so.2.1.3 libiconv.so.2 -> libiconv.so.2.5.0 liblite.so.3 -> liblite.so.3.0.5 libdirect-1.4.so.0 -> libdirect.so libgif.so.4 -> libgif.so.4.1.6 libvorbis.so.0 -> libvorbis.so.0.4.3 libvorbisfile.so.3 -> libvorbisfile.so.3.3.2 libmpg123.so.0 -> libmpg123.so.0.20.3 libfaad.so.2 -> libfaad.so.2.0.0 libleck.so.3 -> libleck.so.3.0.5 libdirectfb-1.4.so.0 -> libdirectfb.so libid3tag.so.0 -> libid3tag.so.0.3.0 libfreetype.so.6 -> libfreetype.so.6.3.20 libfusion-1.4.so.0 -> libfusion.so /usr/lib: libmenu.so.5 -> libmenu.so.5.7 libpanel.so.5 -> libpanel.so.5.7 libform.so.5 -> libform.so.5.7 libstdc++.so.6 -> libstdc++.so.6.0.8 libncurses.so.5 -> libncurses.so.5.7 /lib: ld-uClibc.so.0 -> ld-uClibc-0.9.29.so librt.so.0 -> librt-0.9.29.so libssp.so.0 -> libssp.so.0.0.0 libmudflapth.so.0 -> libmudflapth.so.0.0.0 libdl.so.0 -> libdl-0.9.29.so libcrypt.so.0 -> libcrypt-0.9.29.so libutil.so.0 -> libutil-0.9.29.so libc.so.0 -> libuClibc-0.9.29.so libmudflap.so.0 -> libmudflap.so.0.0.0 libresolv.so.0 -> libresolv-0.9.29.so libpthread.so.0 -> libpthread-0.9.29.so libgcc_s.so.1 -> libgcc_s.so.1 libm.so.0 -> libm-0.9.29.so libnsl.so.0 -> libnsl-0.9.29.so libthread_db.so.1 -> libthread_db-0.9.29.so /usr/local/BerkeleyDB.4.7/lib: libdb-4.7.so -> libdb.so [sbox-Z2: ~/zsnes_1_51/src] > I have seen this same question pop up several times over the years in various lists and nobody has been able to answer it. If someone could put an end to this riddle, I would appreciate it. :-) Also, I apologize if this message comes through twice. Whatever Sourceforge is using for mailing lists is bouncing or eating anything that comes from a Gmail account (and this has aparently gone on for ages). Thanks, -Steve Ballantyne |
|||||||||||
|
Cannot build against libSDL v1.2.14? |
Patrice Mandin
Guest
|
Le Sat, 12 Dec 2009 10:41:10 -0500
"Ballantyne, Steve D." a écrit:
Just a wild guess, these error messages say 'try using -rpath or -rpath-link', and I suppose it's sdl-config script that gives -Wl,-rpath,/usr/local/lib to the configure script. It's like the linker only checks for libiconv, libdirectfb, libfusion, libdirect in the directory given via the rpath directive (/usr/local/lib) but they are installed system wide (I suppose in /usr/lib). Things you could try: - Remove -Wl,-rpath,${libdir} from /usr/local/bin/sdl-config There is also a similar line in /usr/local/lib/pkgconfig/sdl.pc - Or simply rebuild SDL from sources, adding --disable-rpath on the command line when you ./configure SDL. If you are using a cross-compiler, you must also have the libraries cross-compiled for your target system, it won't work with the host ones. -- Patrice Mandin WWW: http://pmandin.atari.org/ Programmeur Linux, Atari Spécialité: Développement, jeux _______________________________________________ SDL mailing list http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org |
|||||||||||||
|
Cannot build against libSDL v1.2.14? |
Ballantyne, Steve D.
Guest
|
Hello Patrice,
Rebuilding SDL with "./configure --disable-rpath" did the trick! Thank you so much for the suggestion. I really appreciate it. Thanks, Steve D. Ballantyne -----Original Message----- From: Patrice Mandin [mailto:] Sent: Sunday, December 13, 2009 3:43 PM To: SDL Development List Cc: Ballantyne, Steve D. Subject: Re: [SDL] Cannot build against libSDL v1.2.14? - Or simply rebuild SDL from sources, adding --disable-rpath on the command line when you ./configure SDL. _______________________________________________ SDL mailing list http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org |
|||||||||||
|