wince 编译 ffmpeg
2015-05-05 14:28
155 查看
1、 安装cygwin,最好是最新版本
2、下载cygwin-cegcc-mingw32ce-0.51.0-1,解压之后放到cywin安装目录下。目录结构应该是/cywin/opt/mingw32ce/...
3、下载ffmpeg源码,我们用的是 http://nchc.dl.sourceforge.net/sourceforge/ambulant/ffmpeg-wm5.zip,解压
4、打开c:\cygwin\opt\mingw32ce\arm-wince-mingw32ce\include\errno.h
注释掉 11行 //#ifdef __COREDLL__
12行 //# include_next <errno.h>
13行 //#else /* __COREDLL__ */
107行//#endif /* Not __COREDLL__ */
5、打开cywin终端,创建一个文件,vi ffmpeg-build,然后把下面的脚本拷进去
6、安装pexports,网上搜索 pexports-0.43.zip,解压到 cygwin下,或其他地方,并将其bin目录加入环境变量。比如解压到c盘,目录为C:\pexports-0.43\bin,那么设置环境变量应该在终端执行:PATH=/cygdrive/c/pexports-0.43/bin:$PATH,如果直接解压到cygwin安装目录下,则应该是:PATH=/pexports-0.43/bin:$PATH
注意,这一步如果安装失败,那么第7步编译可以成功,并生成dll文件,但是不会产生 *.lib 文件
7、 编译,在cywin终端编译。先把ffmpeg-build文件拷贝到 ffmpeg-wm5源代码根目录下,运行 ./ffmpeg-build,等待运行完成
8、完成后,找到 target目录,下面有include 和lib,此时完成编译
2、下载cygwin-cegcc-mingw32ce-0.51.0-1,解压之后放到cywin安装目录下。目录结构应该是/cywin/opt/mingw32ce/...
3、下载ffmpeg源码,我们用的是 http://nchc.dl.sourceforge.net/sourceforge/ambulant/ffmpeg-wm5.zip,解压
4、打开c:\cygwin\opt\mingw32ce\arm-wince-mingw32ce\include\errno.h
注释掉 11行 //#ifdef __COREDLL__
12行 //# include_next <errno.h>
13行 //#else /* __COREDLL__ */
107行//#endif /* Not __COREDLL__ */
5、打开cywin终端,创建一个文件,vi ffmpeg-build,然后把下面的脚本拷进去
#!/bin/bash #create target rm -rf target mkdir target if [ $? -eq 0 ]; then echo "creat target dir ok" else exit 0 fi LIST_FFMPEG=" libavutil libavdevice libavformat libavfilter libavcodec libswscale libpostproc " LIST_FFMPEG_LIB=" avutil avdevice avformat avfilter avcodec swscale postproc " del_output(){ path=$1 rm $path/*.lib rm $path/*.dll rm $path/*.def } del_any(){ for opt; do del_output $opt done } make_all(){ for opt; do echo "cd ${opt}" cd $opt make if [ $? != 0 ]; then exit 0 fi cd ../ done } cpy_all_libs(){ cur=target/lib for opt; do echo "$(pwd)" cp $opt/*.lib $cur/ cp $opt/*.dll $cur/ # cp $opt/*.def $cur/ done } cpy_all_headers(){ cur=target/include for opt; do echo "$(pwd)" inc=$cur/$opt mkdir $inc cp $opt/*.h $inc/ done } def_all_libs(){ for opt; do pexports $opt.dll > $opt.def lib /machine:ARM /def:$opt.def /out:$opt.lib done } del_any $LIST_FFMPEG echo "wait for configure..." ./configure --enable-memalign-hack --target-os=mingw32ce --arch=arm --enable-cross-compile --cross-prefix=arm-wince-mingw32ce- --enable-small --enable-static --enable-shared --disable-mmx --disable-zlib --disable-debug --disable-ffmpeg --disable-ffserver --disable-ffplay --disable-encoders --disable-network --disable-muxers --disable-decoders --disable-filters --disable-demuxers --disable-devices --disable-protocols --disable-bsfs --disable-parsers --enable-decoder=mpeg4 --enable-decoder=h264 --extra-cflags="-march=armv4 -mtune=xscale" --prefix=$(pwd)/target if [ $? -eq 0 ]; then echo "configure ok" else exit 0 fi make_all $LIST_FFMPEG mkdir target/lib cpy_all_libs $LIST_FFMPEG mkdir target/include cpy_all_headers $LIST_FFMPEG cd target/lib/ def_all_libs $LIST_FFMPEG_LIB echo "done."
6、安装pexports,网上搜索 pexports-0.43.zip,解压到 cygwin下,或其他地方,并将其bin目录加入环境变量。比如解压到c盘,目录为C:\pexports-0.43\bin,那么设置环境变量应该在终端执行:PATH=/cygdrive/c/pexports-0.43/bin:$PATH,如果直接解压到cygwin安装目录下,则应该是:PATH=/pexports-0.43/bin:$PATH
注意,这一步如果安装失败,那么第7步编译可以成功,并生成dll文件,但是不会产生 *.lib 文件
7、 编译,在cywin终端编译。先把ffmpeg-build文件拷贝到 ffmpeg-wm5源代码根目录下,运行 ./ffmpeg-build,等待运行完成
8、完成后,找到 target目录,下面有include 和lib,此时完成编译
相关文章推荐
- 【转】Cygwin 交叉编译 ffmpeg for WinCE
- wince版本ffmpeg的编译 第三篇
- ffmpeg编译(生成Windows Mobile或Wince平台dll, lib)
- wince版本ffmpeg的编译 第四篇
- wince版本ffmpeg的编译 终篇
- WINCE的FFMPEG交叉编译环境搭建
- wince版本ffmpeg的编译 终篇 (续)
- 编译ffmpeg for WinCE
- wince版本ffmpeg的编译 第一篇
- wince版本ffmpeg的编译 第二篇
- 编译ffmpeg for WinCE
- 【FFmpeg】Windows下FFmpeg编译
- Macos下编译ffmpeg
- ffmpeg编译
- ios8.1下编译ffmpeg
- wince编译流程-wince入门引导,很好
- h264 ffmpeg 400 交叉编译
- WINCE编译过程中的错误出现阶段
- 阿里云服务器---centos编译安装ffmpeg
- [绍棠] iOS编译FFmpeg、kxmovie实现视频播放