Opened 12 years ago
Closed 9 years ago
#2528 closed enhancement (invalid)
Detect in configure if linking (aac encoders) will fail
Reported by: | Simon Blandford | Owned by: | |
---|---|---|---|
Priority: | wish | Component: | build system |
Version: | git-master | Keywords: | libaacplus libfdk-aac libvo-aac |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | no |
Description
Summary of the bug:
How to reproduce:
./configure --enable-gpl --enable-nonfree --enable-runtime-cpudetect --enable-libfaac --enable-libfdk-aac --enable-librtmp --enable-libmp3lame --enable-nonfree --enable-libopenjpeg --enable-libpulse --enable-libspeex --enable-libopus --enable-libtheora --enable-libvo-aacenc --enable-version3 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-libaacplus --enable-libdc1394 --enable-libflite --enable-libv4l2 --enable-dxva2 --enable-vaapi --enable-vda --enable-vdpau --enable-libcaca --enable-static --disable-shared --disable-debug
Multiple definition errors when compiling for static build (haven't tried shared library). If this can't be made to work (since it is a problem with the libraries sharing the same code) then perhaps the configure script can detect the condition and advise to disable the conflicting options.
/usr/local/lib/libaacplus.a(bitbuffer.o): In function `CreateBitBuffer': /home/simonb/libaacplus-2.0.2/src/bitbuffer.c:61: multiple definition of `CreateBitBuffer' /usr/local/lib/libvo-aacenc.a(bitbuffer.o):/home/simonb/vo-aacenc-0.1.2/aacenc/src/bitbuffer.c:61: first defined here /usr/local/lib/libaacplus.a(bitbuffer.o): In function `DeleteBitBuffer': /home/simonb/libaacplus-2.0.2/src/bitbuffer.c:94: multiple definition of `DeleteBitBuffer' /usr/local/lib/libvo-aacenc.a(bitbuffer.o):/home/simonb/vo-aacenc-0.1.2/aacenc/src/bitbuffer.c:84: first defined here /usr/local/lib/libaacplus.a(bitbuffer.o): In function `ResetBitBuf': /home/simonb/libaacplus-2.0.2/src/bitbuffer.c:115: multiple definition of `ResetBitBuf' /usr/local/lib/libvo-aacenc.a(bitbuffer.o):/home/simonb/vo-aacenc-0.1.2/aacenc/src/bitbuffer.c:100: first defined here /usr/local/lib/libaacplus.a(bitbuffer.o): In function `CopyBitBuf': /home/simonb/libaacplus-2.0.2/src/bitbuffer.c:137: multiple definition of `CopyBitBuf' /usr/local/lib/libvo-aacenc.a(bitbuffer.o):/home/simonb/vo-aacenc-0.1.2/aacenc/src/bitbuffer.c:120: first defined here /usr/local/lib/libaacplus.a(bitbuffer.o): In function `GetBitsAvail': /home/simonb/libaacplus-2.0.2/src/bitbuffer.c:178: multiple definition of `GetBitsAvail' /usr/local/lib/libvo-aacenc.a(bitbuffer.o):/home/simonb/vo-aacenc-0.1.2/aacenc/src/bitbuffer.c:131: first defined here /usr/local/lib/libaacplus.a(bitbuffer.o): In function `WriteBits': /home/simonb/libaacplus-2.0.2/src/bitbuffer.c:255: multiple definition of `WriteBits' /usr/local/lib/libvo-aacenc.a(bitbuffer.o):/home/simonb/vo-aacenc-0.1.2/aacenc/src/bitbuffer.c:148: first defined here
/usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x0): multiple definition of `bookSbrNoiseBalanceL11T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x10d0): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x20): multiple definition of `bookSbrNoiseBalanceC11T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1100): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0xa0): multiple definition of `v_Huff_NoiseLevelL11T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1180): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0xe0): multiple definition of `v_Huff_NoiseLevelC11T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x11c0): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x1e0): multiple definition of `bookSbrEnvBalanceL11F' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x12c0): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x200): multiple definition of `bookSbrEnvBalanceC11F' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x12e0): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x270): multiple definition of `bookSbrEnvBalanceL11T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1350): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x2a0): multiple definition of `bookSbrEnvBalanceC11T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1380): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x320): multiple definition of `v_Huff_envelopeLevelL11F' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1400): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x360): multiple definition of `v_Huff_envelopeLevelC11F' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1440): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x460): multiple definition of `v_Huff_envelopeLevelL11T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1540): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x4a0): multiple definition of `v_Huff_envelopeLevelC11T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1580): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x5a0): multiple definition of `bookSbrEnvBalanceL10F' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1680): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x5e0): multiple definition of `bookSbrEnvBalanceC10F' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x16c0): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x6c0): multiple definition of `bookSbrEnvBalanceL10T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x17a0): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x700): multiple definition of `bookSbrEnvBalanceC10T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x17e0): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x7e0): multiple definition of `v_Huff_envelopeLevelL10F' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x18c0): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0x860): multiple definition of `v_Huff_envelopeLevelC10F' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1940): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0xa60): multiple definition of `v_Huff_envelopeLevelL10T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1b40): first defined here /usr/local/lib/libaacplus.a(sbr_rom.o):(.rodata+0xae0): multiple definition of `v_Huff_envelopeLevelC10T' /usr/local/lib/libfdk-aac.a(lt2-sbr_rom.o):(.rodata+0x1bc0): first defined here
Attachments (1)
Change History (4)
comment:1 by , 12 years ago
Keywords: | libfdk-aac libvo-aac added |
---|---|
Priority: | normal → wish |
Reproduced by developer: | set |
Status: | new → open |
Summary: | enable-libaacplus mutually exclusive to enable-libfdk-aac or enable-libvo-aacenc → Detect in configure if linking (aac encoders) will fail |
Type: | defect → enhancement |
Version: | unspecified → git-master |
Version 0, edited 12 years ago by (next)
by , 12 years ago
Attachment: | testaacencoder.c added |
---|
comment:2 by , 12 years ago
I attached a short c file that allows to reproduce the problem with:
$ gcc testaacencoder.c -lfdk-aac -laacplus -lm
comment:3 by , 9 years ago
Resolution: | → invalid |
---|---|
Status: | open → closed |
libaacplus and libvo-aacenc have been removed.
Note:
See TracTickets
for help on using tickets.
Did you already report this to the maintainers of libaacplus, libfdk and libvo?
Because this cannot be fixed in FFmpeg afaict, and I wonder how useful the (non-trivial) configure check is.