[FFmpeg-user] ffmpeg cross compile error

Thomas Schmiedl thomas.schmiedl at web.de
Wed Jul 24 21:11:25 EEST 2019


Thanks Moritz, it works now.

Am 24.07.2019 um 16:04 schrieb Moritz Barsnick:
> On Wed, Jul 24, 2019 at 15:28:04 +0200, Thomas Schmiedl wrote:
>> Hello,
>>
>> I try to cross compile ffmpeg (git) using this toolchain
>> https://freetz.github.io/ for a MIPS-based router. My goal is to extract
>> a single image from this mjpeg-webcam-stream
>> http://gwm.ccshpraha.cz:8087/. Attached are the make output and
>> config.log (contains the configure parameters)
> [...]
>> CC	libavdevice/alldevices.o
>> In file included from /home/user/freetz/toolchain/build/mips_gcc-5.5.0_uClibc-1.0.14-nptl_kernel-3.10/mips-linux-uclibc/include/stdlib.h:32:0,
>>                   from /home/user/freetz/toolchain/build/mips_gcc-5.5.0_uClibc-1.0.14-nptl_kernel-3.10/mips-linux-uclibc/include/bits/sched.h:116,
>>                   from /home/user/freetz/toolchain/build/mips_gcc-5.5.0_uClibc-1.0.14-nptl_kernel-3.10/mips-linux-uclibc/include/sched.h:34,
>>                   from /home/user/freetz/toolchain/build/mips_gcc-5.5.0_uClibc-1.0.14-nptl_kernel-3.10/mips-linux-uclibc/include/pthread.h:24,
>>                   from ./libavutil/thread.h:30,
>>                   from libavdevice/alldevices.c:22:
>> ./config.h:17:19: error: expected identifier or '(' before 'void'
>>   #define getenv(x) NULL
>>                     ^
>> ./config.h:17:19: error: expected ')' before numeric constant
>>   #define getenv(x) NULL
>>                     ^
>> In file included from ./libavutil/internal.h:176:0,
>>                   from ./libavutil/common.h:491,
>>                   from ./libavutil/avutil.h:296,
>>                   from ./libavutil/samplefmt.h:24,
>>                   from ./libavcodec/avcodec.h:31,
>>                   from ./libavformat/avformat.h:317,
>>                   from ./libavformat/internal.h:27,
>>                   from libavdevice/alldevices.c:23:
>> ./libavutil/libm.h:54:32: error: static declaration of 'cbrt' follows non-static declaration
>>   static av_always_inline double cbrt(double x)
>>                                  ^
>
> This looks like this:
> https://github.com/openwrt/packages/issues/6735
>
> and the workaround seems to be adding "--cpu=<something>". See
> https://github.com/openwrt/packages/pull/6743/commits/8067051bfc99f48d02aec52265fc9b78f8e60dee
>
> I don't know if there's a real bug in ffmpeg's source here. This here:
>
>> ./config.h:17:19: error: expected identifier or '(' before 'void'
>>   #define getenv(x) NULL
>
> indicates that the NULL macro is different on MIPS, and ffmpeg's macro
> might have to be:
>
>>   #define getenv(x) (NULL)
>
> just in case??
>
> Moritz
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".
>


More information about the ffmpeg-user mailing list