ffmpeg 在mac os x 上的编译 及 Xcode项目中的运用
2012-01-17 17:13
1201 查看
移值到Mac OS/X下的模拟iPhone平台下过程:
第一步:目录准备
建立一个目录名为Ffmpeg,其中建立两个目录,一个名为build,一个名为ffmpeg-0.6。在ffmpeg-0.6中,存放FFmpeg的源代码,本文使用ffmpeg0.6版本;在build路径中建立一个名为@executable_path的目录,用于存放编译结果。
第二步:在shell(bash)上 调整build的路径
cd (后面跟着之前创建的build路径)
第三步:检查gcc,make的版本
gcc 版本至少为4.2.1
make 版本至少为3.81
确认版本,如版本不符,安装新版本后,继续。
*安装方法很简单,configure,make,make install即可。
第四步:编译 ffmpeg(我感觉更可以说跨平台的转化)
./ffmpeg-0.6/configure
--prefix=@executable_path --libdir=@executable_path --enable-gpl --enable-static --disable-shared --enable-swscale --enable-zlib --enable-bzlib --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-pthreads
第五步:在make之前,需注意:
在MAC 10.4.8系统上进行make /build/libswscale/时会报错,原因是指定了其version为0。修改/config.mak文件中指定libswscale version信息的代码行,即需将第71行改为:libswscale_VERSION_MAJOR=1
第六步:编译和安装
在shell刚才路径下运行: make , make install
第七步:创xcode项目 将5个包括(libavcodec libavdevice libavformat libavutil libswscale)(.a)和 libz.dylib库文件加入。
第八步:shell 中转到项目中的 ffmpeg目录下
运行:./build_i386
最后:重起xcode项目。
移植到真机时:
由于ffmpeg要重新编译,并且模擬器是i386--真机是armv6-armv7
所以要运行build_armv7,但是之前要以文本打开build_armv7修改SDK的版本。类似如下:
./configure
--disable-doc --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-cross-compile --arch=arm --target-os=darwin --cc=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc --as='gas-preprocessor/gas-preprocessor.pl /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc'
-- sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk --cpu=cortex-a8 --extra-cflags='-arch armv7' --extra-ldflags='-arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk' --enable-pic
然后在shell中 运行:./build_armv7
最后打开项目运行
OK。
第一步:目录准备
建立一个目录名为Ffmpeg,其中建立两个目录,一个名为build,一个名为ffmpeg-0.6。在ffmpeg-0.6中,存放FFmpeg的源代码,本文使用ffmpeg0.6版本;在build路径中建立一个名为@executable_path的目录,用于存放编译结果。
第二步:在shell(bash)上 调整build的路径
cd (后面跟着之前创建的build路径)
第三步:检查gcc,make的版本
gcc 版本至少为4.2.1
make 版本至少为3.81
确认版本,如版本不符,安装新版本后,继续。
*安装方法很简单,configure,make,make install即可。
第四步:编译 ffmpeg(我感觉更可以说跨平台的转化)
./ffmpeg-0.6/configure
--prefix=@executable_path --libdir=@executable_path --enable-gpl --enable-static --disable-shared --enable-swscale --enable-zlib --enable-bzlib --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-pthreads
第五步:在make之前,需注意:
在MAC 10.4.8系统上进行make /build/libswscale/时会报错,原因是指定了其version为0。修改/config.mak文件中指定libswscale version信息的代码行,即需将第71行改为:libswscale_VERSION_MAJOR=1
第六步:编译和安装
在shell刚才路径下运行: make , make install
第七步:创xcode项目 将5个包括(libavcodec libavdevice libavformat libavutil libswscale)(.a)和 libz.dylib库文件加入。
第八步:shell 中转到项目中的 ffmpeg目录下
运行:./build_i386
最后:重起xcode项目。
移植到真机时:
由于ffmpeg要重新编译,并且模擬器是i386--真机是armv6-armv7
所以要运行build_armv7,但是之前要以文本打开build_armv7修改SDK的版本。类似如下:
./configure
--disable-doc --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-cross-compile --arch=arm --target-os=darwin --cc=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc --as='gas-preprocessor/gas-preprocessor.pl /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc'
-- sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk --cpu=cortex-a8 --extra-cflags='-arch armv7' --extra-ldflags='-arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk' --enable-pic
然后在shell中 运行:./build_armv7
最后打开项目运行
OK。
相关文章推荐
- Mac OS X下编译并搭建ffmpeg开发环境及常见错误处理
- Win端Unity 打包XCode项目导入虚拟机Mac系统使用XCode编译出现Unity-iPhone.xcodeproj cannot be opened
- 在 Mac OS X 下使用 Android NDK r5b 编译 FFmpeg 0.8
- 在Mac OS X 10.9.4 Mavericks编译boost 1.55,并在xcode中使用.
- 在 Mac OS X 环境中从源代码编译安装 FFmpeg
- Mac OS X上使用XCode编译调用OS X的动态库
- 编译 ffmpeg 2.2.9 + iFrameExtractor //MAC 10.9.* iOS 8.1 Xcode 6.1 // VLC for iOS 2.3
- aumenu在XCode(MacOS/IPhone)下的编译
- 在mac ox s虚拟机中的unity3D项目编译生成并导出的xcode项目无法在ios设备中运行
- 【OC易错】Xcode5.0新建OS X下的cmd工程后出现编译错误clang: error: invalid version number in '-mmacosx-version-min=
- MAC OS X上编译ffmpeg
- 在Mac OS X上安装Xcode以及编译Objective-C
- Mac OS X 10.8 Xcode4.5.1下编译MPlayer OSX Extended
- 移值FFMPEG到iPhone或Mac OS/X
- xcode编译项目Permission denied错误
- SDL2在MAC OS X 10.9/10.10 XCode 5下的配置安装
- Mac OS X下删除或添加鼠标右键菜单项目及清除Mac OS右键菜单重复项
- Xcode在项目更名之后,把项目转移到其他机器出现ld: file not found: /Users/macmini/Library/Developer/Xcode/DerivedData/t的问题
- 配置Xcode版本控制SVN详细步骤内含解决Xcode/Mac OS10.8无法配置SVN的解决方法
- 基于mac,ndk开发,使用android studio 编译ffmpeg(二)