编译工具及环境
Xcode 7.3.1
IOS SDK版本 9.3
1. 下载最新版的libjpeg-turbo
https://sourceforge.net/projects/libjpeg-turbo/files/1.5.0/
只需要下载源代码即可,无需下载dmg文件。
2. 下载相应的编译工具
编译过程中会用到下面5个工具,可在网上搜索下载最新版本即可
m4 1.4 or later
autoconf 2.56 or later
automake 1.7 or later
libtool 1.4 or later
NASM or YASM (备注: 我用的是NASM)
下载了上面5个工具后进行编译安装到 /usr/local/bin/ 目录下
3. 编译libjpeg-turbo
按照 https://github.com/libjpeg-turbo/libjpeg-turbo/blob/master/BUILDING.md 介绍的方式
Set the following shell variables for simplicity:
IOS_PLATFORMDIR=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform
IOS_SYSROOT=$IOS_PLATFORMDIR/Developer/SDKs/iPhoneOS*.sdk
IOS_GCC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
IOS_CFLAGS="-arch arm64"
Follow the procedure under "Building libjpeg-turbo" above, adding
--host aarch64-apple-darwin \
CC="$IOS_GCC" LD="$IOS_GCC" \
CFLAGS="-isysroot $IOS_SYSROOT -O3 $IOS_CFLAGS" \
LDFLAGS="-isysroot $IOS_SYSROOT $IOS_CFLAGS"
to the configure
command line.
configure
命令是会一直报
configure: error: C compiler cannot create executables
试了很多次都不行;在网上找了很多文档没有答案,只好靠自己摸索
./configure CC="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" \
LD="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" \
CFLAGS="-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk -O3 -arch arm64 -miphoneos-version-min=7.0" \
LDFLAGS="-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk -arch arm64 -miphoneos-version-min=7.0" \
--host aarch64-apple-darwin \
--prefix=/Users/***/libjpeg-turbo-1.5.0/libs4arm64/ \
--disable-shared
将上面的***替换为自己要输出的lib目录即可。
注意: 每一行最后的"\"不能有空格
当configure执行完之后,然后执行make命令就会开始进行编译
当编译完成后执行make install 就会将相应的lib目录下