Lib/xiph/linux broken in 1.4?
by Josef Jahn · in Torque Game Engine · 06/04/2006 (9:27 am) · 3 replies
#2
06/06/2006 (1:57 am)
Update: Replaced the offending files with ones from Debian packages, and all is good :)
#3
I assume at least one thing is happening here. First a "cvs log" on at least some of those files (didn't check all of them) shows:
Notably keyword substitution: is set to "kv" meaning keyword substitution is enabled. This shouldn't be enabled for binary files. Someone should resolve this with a "cvs admin -kb libx/xipg/linux/lib*" command.
I did a cmp of all the lib/xiph/linux/lib* files from CVS versus the files installed by TorqueGameEngineSDK-1.4.2-RC1.bin and they all are different. At this point, it looks to me like they are all corrupt as I can link against the lib/linux/xiph/lib* files from TorqueGameEngineSDK-1.4.2-RC1.bin, but not the ones in CVS.
09/30/2006 (5:55 pm)
I just ran into a similar problem trying to compile a CVS head version I pulled 28 Sep 2006. My ld under SuSE 10.0 doesn't recognize any of the .so files in lib/xiph/linux as being libraries either. Linking against my system installed version of these files works fine, but leaves open a project management issue of differing library versions.I assume at least one thing is happening here. First a "cvs log" on at least some of those files (didn't check all of them) shows:
Working file: lib/xiph/linux/libvorbisenc.so.2.0.0 head: 1.2 branch: locks: strict access list: symbolic names: keyword substitution: kv total revisions: 2; selected revisions: 2 description: ---------------------------- revision 1.2 date: 2006/09/06 23:29:07; author: DrakanFyr; state: Exp; lines: +2 -14460 * Syncing CVS with TGE 1.4.2 - Phase 4 - Lib ---------------------------- revision 1.1 date: 2006/02/07 01:03:51; author: ryacketta; state: Exp; RJY: update library file name sand checkLinks.sh =============================================================================
Notably keyword substitution: is set to "kv" meaning keyword substitution is enabled. This shouldn't be enabled for binary files. Someone should resolve this with a "cvs admin -kb libx/xipg/linux/lib*" command.
I did a cmp of all the lib/xiph/linux/lib* files from CVS versus the files installed by TorqueGameEngineSDK-1.4.2-RC1.bin and they all are different. At this point, it looks to me like they are all corrupt as I can link against the lib/linux/xiph/lib* files from TorqueGameEngineSDK-1.4.2-RC1.bin, but not the ones in CVS.
Torque Owner Josef Jahn
It looks as if Torque 1.4 HEAD accidentally has some .so files checked in as text files, which breaks them. I'm talking about torque/lib/xiph/linux/*.so
/checklinks.sh/1.5/Tue Feb 7 12:43:44 2006//THEAD
/libogg.so.0.5.2/1.1/Tue Feb 7 01:03:51 2006//THEAD
/libtheora.so.0.1.0/1.1/Tue Feb 7 01:03:51 2006//THEAD
/libvorbis.so.0.3.0/1.1/Tue Feb 7 01:03:51 2006//THEAD
/libvorbisenc.so.2.0.0/1.1/Tue Feb 7 01:03:51 2006//THEAD
/libvorbisfile.so.3.1.0/1.1/Tue Feb 7 01:03:51 2006//THEAD
This leads to the following compilation problem under linux:
/usr/bin/ld: ../lib/xiph/linux/libogg.so: invalid string offset 184549376 >= 0 for section
/usr/bin/ld: ../lib/xiph/linux/libogg.so: invalid string offset 16777216 >= 0 for section .shstrtab
/usr/bin/ld: ../lib/xiph/linux/libogg.so: invalid string offset 50331648 >= 0 for section
/usr/bin/ld: ../lib/xiph/linux/libogg.so: invalid string offset 16777216 >= 0 for section .shstrtab
/usr/bin/ld: ../lib/xiph/linux/libogg.so: invalid string offset 4278190080 >= 0 for section
/usr/bin/ld: ../lib/xiph/linux/libogg.so: invalid string offset 16777216 >= 0 for section .shstrtab
../lib/xiph/linux/libvorbis.so: file not recognized: File truncated
(GCC3.3)
Am I right, or did I make some stupid mistake?
EDIT: This forum freaks out and swallows posts if you have lots of single-quotes...