您的位置:首页 > 其它

ubuntu ffmpeg+sdl编译安装过程记录

2016-06-28 17:25 525 查看
在ubuntu上的整个编译过程其实就是标准的./configure &&make &&sudo make install

几个问题记录下:

1.如果系统没有装SDL1.x版本的话,默认是不会编译出ffpaly命令的。因为ffmpeg的音视频显示依赖SDL库,且必须是1.x版本的SDL。

2.

运行ffplay时,有些机器上会出现

Could not initialize SDL - No available video device

(Did you set the DISPLAY variable?)

说明系统中没有安装x11的库文件,因此编译出来的SDL库实际上不能用。

下载安装
sudo apt-get install libx11-dev

sudo apt-get install xorg-dev


重新编译sdl

再次进入sdl源代码目录重新编译,make clean,./configure,make,make install

3.安装SDL的时候出现

/src/video/x11/SDL_x11sym.h:168:17: error: conflicting types for _XData32?

SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)

^

./src/video/x11/SDL_x11dyn.c:95:5: note: in definition of macro 釹DL_X11_SYM?

rc fn params { ret p##fn args ; }

查阅了一些资料,发现是libx11-dev版本问题(查看版本如图),版本>1.5.99,所以需要修改src/video/x11/SDL_x11sym.h 文件,按照提示修改168行,

修改如下:

原来是:SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)


改后添加一个单词即可:(_Xconst)

SDL_X11_SYM(int,_XData32,(Display *dpy,register_Xconst long *data,unsigned len),(dpy,data,len),return)

再make 和 sudo make install就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: