[Vorbis] compile error

Jim Worrall coniophora at gmail.com
Sun Apr 21 09:09:22 PDT 2013


On 2013 Apr 21, at 10:03 AM, Jim Worrall <coniophora at gmail.com> wrote:

> 
> On 2013 Apr 21, at 5:16 AM, Joshua Root <josh+xiph at root.id.au> wrote:
> 
>> On 2013-4-21 12:02 , Jim Worrall wrote:
>>> 
>>> I tried without a --build= statement and with --build=x86_64-apple-darwin12.3.0.  With no build statement, some key lines in the libvorbis config.log say:
>>> 
>>> configure:2328: checking build system type
>>> configure:2342: result: i386
>>> 
>>> If I use  --build=x86_64-apple-darwin12.3.0, I get 
>>> 
>>> configure:2328: checking build system type
>>> configure:2342: result: x86_64-apple-darwin12.3.0
>> 
>> Older config.guess versions will report i386 on some x86_64 Macs. It's
>> often not a problem since the build_cpu variable set by autoconf is
>> often unused. If there's a problem it tends to be in the form of a
>> compilation failure (due to e.g. the wrong kind of inline asm being used).
>> 
>>> Both times ffmpeg would error out claiming libvorbis was not found, although libvorbis gets built in both cases.  The ffmpeg config.log seems to suggest it is still something wrong with the architecture.  In both cases it says:
>>> 
>>> Undefined symbols for architecture x86_64:
>>> "_vorbis_info_init", referenced from:
>>>     _main in ffconf.sFaFW4NZ.o
>>> ld: symbol(s) not found for architecture x86_64
>>> collect2: ld returned 1 exit status
>>> ERROR: libvorbis not found
>> 
>> Can't be sure without seeing the actual command being run, but it looks
>> like it's not linking with libvorbis. The "for architecture x86_64"
>> phrasing doesn't mean it's necessarily anything to do with mismatched
>> architectures, the linker just reports errors on a per-architecture
>> basis because you could be building for multiple architectures at once.
>> 
>> - Josh
> 
> Well, ffmpeg builds just fine if I remove --enable-libvorbis from the ffmpeg command line.  In case you can see something obvious, I'd be grateful if you could check the command line (here without --enable-libvorbis):
> 
> ./configure --prefix=${TARGET} --enable-nonfree --enable-gpl --enable-hardcoded-tables --enable-libvo-aacenc --enable-version3 --enable-libmp3lame --enable-libx264 --enable-libgsm --enable-avfilter --enable-filters --enable-libtheora --enable-libspeex --disable-indevs --disable-outdevs --disable-ffserver --disable-network && make -j 4 && make install
> 
> earlier in the script is "export CC=clang"
> 
> Jim
> 

Oops, I omitted these flags that come before the configure command.  I don't understand them, but I guess one of them has to do with linking, which you mentioned.

export LDFLAGS="-L${TARGET}/lib $CFLAGS"
export  CFLAGS="-I${TARGET}/include $LDFLAGS"



More information about the Vorbis mailing list