【问题标题】:Compling ffmpeg with libwebp error(s)使用 libwebp 错误编译 ffmpeg
【发布时间】:2018-10-10 00:56:51
【问题描述】:

所以我正在尝试使用 --enable-libwebp 编译 ffmpeg。但我收到以下错误:

In file included from libavcodec/libwebpenc_animencoder.c:30:0:
/usr/include/webp/mux.h:101:13: error: expected identifier or ‘(’ before ‘int’
 WEBP_EXTERN(int) WebPGetMuxVersion(void);
             ^~~
/usr/include/webp/mux.h:107:13: error: expected identifier or ‘(’ before ‘WebPMux’
 WEBP_EXTERN(WebPMux*) WebPNewInternal(int);
             ^~~~~~~
/usr/include/webp/mux.h:120:13: error: expected identifier or ‘(’ before ‘void’
 WEBP_EXTERN(void) WebPMuxDelete(WebPMux* mux);
             ^~~~
/usr/include/webp/mux.h:126:13: error: expected identifier or ‘(’ before ‘WebPMux’
 WEBP_EXTERN(WebPMux*) WebPMuxCreateInternal(const WebPData*, int, int);
             ^~~~~~~
/usr/include/webp/mux.h:163:13: error: expected identifier or ‘(’ before ‘WebPMuxError’
 WEBP_EXTERN(WebPMuxError) WebPMuxSetChunk(
             ^~~~~~~~~~~~
/usr/include/webp/mux.h:179:13: error: expected identifier or ‘(’ before ‘WebPMuxError’
 WEBP_EXTERN(WebPMuxError) WebPMuxGetChunk(
             ^~~~~~~~~~~~
/usr/include/webp/mux.h:192:13: error: expected identifier or ‘(’ before ‘WebPMuxError’
 WEBP_EXTERN(WebPMuxError) WebPMuxDeleteChunk(
             ^~~~~~~~~~~~
/usr/include/webp/mux.h:225:13: error: expected identifier or ‘(’ before ‘WebPMuxError’
 WEBP_EXTERN(WebPMuxError) WebPMuxSetImage(
             ^~~~~~~~~~~~
/usr/include/webp/mux.h:245:13: error: expected identifier or ‘(’ before ‘WebPMuxError’
 WEBP_EXTERN(WebPMuxError) WebPMuxPushFrame(
             ^~~~~~~~~~~~
/usr/include/webp/mux.h:263:13: error: expected identifier or ‘(’ before ‘WebPMuxError’
 WEBP_EXTERN(WebPMuxError) WebPMuxGetFrame(
             ^~~~~~~~~~~~
...

我需要使用特定版本的 libwebp 吗?任何帮助将不胜感激。

【问题讨论】:

    标签: c ffmpeg webp


    【解决方案1】:

    我刚刚从https://www.ffmpeg.org/download.html下载了源代码

    加载 webp 库

    sudo apt install libwebp-dev
    

    有版本

    apt-cache policy libwebp-dev 
    libwebp-dev:
      Installed: 0.4.4-1
      Candidate: 0.4.4-1
    

    然后我使用了这个语法

    ./configure  --enable-libwebp 
    
    make -j8  # on a quad core, else use -j4
    
    sudo make install
    

    这一切都运行得很好......完成的disted二进制现在给出了

    ffmpeg -version
    ffmpeg version N-90893-gcae6f80 Copyright (c) 2000-2018 the FFmpeg developers
    built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609
    configuration: --enable-libwebp
    libavutil      56. 17.100 / 56. 17.100
    libavcodec     58. 19.100 / 58. 19.100
    libavformat    58. 13.100 / 58. 13.100
    libavdevice    58.  4.100 / 58.  4.100
    libavfilter     7. 21.100 /  7. 21.100
    libswscale      5.  2.100 /  5.  2.100
    libswresample   3.  2.100 /  3.  2.100
    

    我在 ubuntu 16.04 x86_64 上的位置

    【讨论】:

    • 好吧,多亏了你的帖子,我才知道是什么。在 Debian 上安装 libwebp 存在冲突。
    猜你喜欢
    • 2012-10-05
    • 2013-01-01
    • 1970-01-01
    • 2015-01-05
    • 1970-01-01
    • 2013-10-01
    • 1970-01-01
    • 2014-06-02
    • 2018-01-01
    相关资源
    最近更新 更多