batguano999
2013-Nov-13 22:51 UTC
[opus] Compiling FFmpeg with libopencore-amrnb and opus-git.
Hi Any idea what's causing these errors:- /home/user/build/lib/libopencore-amrnb.a(preemph.o): In function `preemphasis': /home/user/build/opencore-amr-0.1.3/amrnb/../opencore/codecs_v2/audio/gsm_amr/amr_nb/dec/src/preemph.cpp:193: multiple definition of `preemphasis' /home/user/build/lib/libopus.a(celt_encoder.o):/home/user/build/opus/celt/celt_encoder.c:455: first defined here collect2: error: ld returned 1 exit status Makefile:105: recipe for target 'ffmpeg_g' failed make: *** [ffmpeg_g] Error 1 Compiling FFmpeg with "--enable-libopencore-amrnb --enable-libopus". With opus-git-a71c9ad FFmpeg gives the errors and fails to build. :-( With opus-1.1-beta FFmpeg builds OK. :-) @arch ~]$ ./ffmpeg ffmpeg version 2.1 Copyright (c) 2000-2013 the FFmpeg developers built on Nov 13 2013 22:45:33 with gcc 4.8.2 (GCC) configuration: --extra-cflags=-I/home/user/build/include --extra-ldflags=-L/home/user/build/lib --enable-libopencore-amrnb --enable-libopus --enable-version3 libavutil 52. 48.100 / 52. 48.100 libavcodec 55. 39.100 / 55. 39.100 libavformat 55. 19.104 / 55. 19.104 libavdevice 55. 5.100 / 55. 5.100 libavfilter 3. 90.100 / 3. 90.100 libswscale 2. 5.101 / 2. 5.101 libswresample 0. 17.104 / 0. 17.104 Tests were carried out using... ArchBang Linux OS. FFmpeg-2.1. opencore-amr-0.1.3. Test build scripts... "bad" is here ---> http://pastebin.com/raw.php?i=vfvEDHG8 "good" is here ---> http://pastebin.com/raw.php?i=kxuAQQBD
Jean-Marc Valin
2013-Nov-13 23:13 UTC
[opus] Compiling FFmpeg with libopencore-amrnb and opus-git.
It appears that both Opus and amrnb have a function called preemphasis(). In the short term, your options are: 1) Not building statically 2) Renaming that function in the Opus code 3) Renaming that function in the amrnb code I can do the rename for the next version of libopus. Cheers, Jean-Marc On 11/13/2013 05:51 PM, batguano999 wrote:> > Hi > Any idea what's causing these errors:- > > /home/user/build/lib/libopencore-amrnb.a(preemph.o): In function `preemphasis': > /home/user/build/opencore-amr-0.1.3/amrnb/../opencore/codecs_v2/audio/gsm_amr/amr_nb/dec/src/preemph.cpp:193: multiple definition of `preemphasis' > /home/user/build/lib/libopus.a(celt_encoder.o):/home/user/build/opus/celt/celt_encoder.c:455: first defined here > collect2: error: ld returned 1 exit status > Makefile:105: recipe for target 'ffmpeg_g' failed > make: *** [ffmpeg_g] Error 1 > > Compiling FFmpeg with "--enable-libopencore-amrnb --enable-libopus". > With opus-git-a71c9ad FFmpeg gives the errors and fails to build. :-( > With opus-1.1-beta FFmpeg builds OK. :-) > > @arch ~]$ ./ffmpeg > ffmpeg version 2.1 Copyright (c) 2000-2013 the FFmpeg developers > built on Nov 13 2013 22:45:33 with gcc 4.8.2 (GCC) > configuration: --extra-cflags=-I/home/user/build/include --extra-ldflags=-L/home/user/build/lib --enable-libopencore-amrnb --enable-libopus --enable-version3 > libavutil 52. 48.100 / 52. 48.100 > libavcodec 55. 39.100 / 55. 39.100 > libavformat 55. 19.104 / 55. 19.104 > libavdevice 55. 5.100 / 55. 5.100 > libavfilter 3. 90.100 / 3. 90.100 > libswscale 2. 5.101 / 2. 5.101 > libswresample 0. 17.104 / 0. 17.104 > > Tests were carried out using... > ArchBang Linux OS. > FFmpeg-2.1. > opencore-amr-0.1.3. > > Test build scripts... > "bad" is here ---> http://pastebin.com/raw.php?i=vfvEDHG8 > "good" is here ---> http://pastebin.com/raw.php?i=kxuAQQBD > > _______________________________________________ > opus mailing list > opus at xiph.org > http://lists.xiph.org/mailman/listinfo/opus >