[GRASS-dev] grass not building against new ffmpeg

Markus Neteler neteler at osgeo.org
Thu Jul 19 01:22:55 PDT 2012


On Thu, Jul 19, 2012 at 8:56 AM, Oliver Burger <obgr_seneca at mageia.org> wrote:
> Am 18.07.2012 18:57, schrieb Markus Neteler:
>>
>> Could you please check (at the end) of config,log for related
>>
>> errors? In the past we had similar problems due to the
>> regular changes in the FFMPEG structure. The error
>> message(s) in config,log might help.
>>
> Here you are:
>
> ****************************************************************
> configure:10717: checking for avcodec_init in -lavcodec
> configure:10734: gcc -o conftest -O2 -g -pipe  -Wp,-D_FORTIFY_SOURCE=2
> -fstack-protector --param=ssp-buffer-size=4     -Wl,--as-needed
> -Wl,--no-undefined -Wl,-z,relro -Wl,-O1 -Wl,--build-id
> -Wl,--enable-new-dtags -Wl,--export-dynamic conftest.c -lavcodec -lavutil
> 1>&5
> /tmp/ccZlG3Jx.o: In function `main':
> /home/rpmbuild/grass/BUILD/grass-6.4.2/configure:10730: undefined reference
> to `avcodec_init'
> collect2: error: ld returned 1 exit status
> configure: failed program was:
> #line 10723 "configure"
> #include "confdefs.h"
> /* Override any gcc2 internal prototype to avoid an error.  */
> /* We use char because int might match the return type of a gcc2
>     builtin and then its argument prototype would still apply.  */
> char avcodec_init();
>
> int main() {
> avcodec_init()
> ; return 0; }
> configure:10753: checking for avcodec_init in -lavcodec
> configure:10770: gcc -o conftest -O2 -g -pipe  -Wp,-D_FORTIFY_SOURCE=2
> -fstack-protector --param=ssp-buffer-size=4     -Wl,--as-needed
> -Wl,--no-undefined -Wl,-z,relro -Wl,-O1 -Wl,--build-id
> -Wl,--enable-new-dtags -Wl,--export-dynamic conftest.c -lavcodec -lavutil
> -lm  1>&5
> /tmp/cca4csZE.o: In function `main':
> /home/rpmbuild/grass/BUILD/grass-6.4.2/configure:10766: undefined reference
> to `avcodec_init'
> collect2: error: ld returned 1 exit status
> configure: failed program was:
> #line 10759 "configure"
> #include "confdefs.h"
> /* Override any gcc2 internal prototype to avoid an error.  */
> /* We use char because int might match the return type of a gcc2
>     builtin and then its argument prototype would still apply.  */
> char avcodec_init();
> ****************************************************************

With a lot of try-and-error I figured it out for FFMPEG 0.10:

  --with-ffmpeg --with-ffmpeg-includes="/usr/include/ffmpeg
/usr/include/ffmpeg/libav* /usr/include/ffmpeg/libpostproc
/usr/include/ffmpeg/libswscale" \

Note that I have additionally /usr/include/ffmpeg inside.

Please let us know if this helps for 0.11,
Markus


More information about the grass-dev mailing list