wordpress中文建站,网站建设项目明细表,前端用什么框架做网站,四川省建设厅官方网站电话1、前提
iOS编译库需要三个架构,arm64,arm64e,x86_64#xff0c;其中x86_64为模拟器所需
iOS编译库需要下载xcode及对应的command line tool#xff08;执行命令时可以自动下载#xff09;#xff0c;下载失败需要去官网搜索下载
2、openssl
参考iOS如何编译OpenSSL静态…1、前提
iOS编译库需要三个架构,arm64,arm64e,x86_64其中x86_64为模拟器所需
iOS编译库需要下载xcode及对应的command line tool执行命令时可以自动下载下载失败需要去官网搜索下载
2、openssl
参考iOS如何编译OpenSSL静态库openssl版本:1.1.1b执行配置命令路径修改为要生成的目标架构文件夹路径 ./Configure iphoneos-cross --prefix/Users/xxx/openssl-1.1.1b/openssl_armv7 修改makefile以下项目 真机arm64为例arm64e修改其中arm64为arm64e一致 # sdk上层路径 CROSS_TOP/Users/relly/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer # sdk文件 CROSS_SDKiPhoneOS12.1.sdk CROSS_COMPILE CC/Users/relly/Downloads/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 CXX CPPFLAGS CFLAGS-DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSLDIR\$(OPENSSLDIR)\ -DENGINESDIR\$(ENGINESDIR)\ -O3 -D_REENTRANT -isysroot $(CROSS_TOP)/SDKs/$(CROSS_SDK) -fno-common 模拟器 # sdk上层路径 CROSS_TOP/Users/relly/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer # sdk文件 CROSS_SDKiPhoneSimulator12.1.sdk CROSS_COMPILE CC/Users/relly/Downloads/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 CXX CPPFLAGS CFLAGS-DDSO_DLFCN -DHAVE_DLFCN_H -DNDEBUG -DOPENSSL_THREADS -DOPENSSL_NO_STATIC_ENGINE -DOPENSSL_PIC -DOPENSSLDIR\$(OPENSSLDIR)\ -DENGINESDIR\$(ENGINESDIR)\ -O3 -D_REENTRANT -isysroot $(CROSS_TOP)/SDKs/$(CROSS_SDK) -fno-common 执行合并库命令 lipo -create ../openssl_arm64/lib/libcrypto.a ../openssl_arm64e/lib/libcrypto.a ../openssl_x86_64/lib/libcrypto.a -output ./libcrypto.a lipo -create ../openssl_arm64/lib/libssl.a ../openssl_arm64e/lib/libssl.a ../openssl_x86_64/lib/libssl.a -output ./libssl.a
3、curl
修改此脚本中的路径为openssl所编译路径后赋予执行权限执行即可:
#!/bin/shmake distcleanCONFIGURE_FLAGS--disable-shared --disable-frontendARCHSarm64 arm64e x86_64# directories
# SOURCE是下载的第三方库源码包解压后的目录可以把sh脚本放到这个目录source改为
SOURCE
# FAT是所有指令集build后输出的目录所有静态库被合并成一个静态库
FATfat-libtool# SCRATCH是下载源码包解压后的目录
SCRATCH./
# must be an absolute path
# THIN 各自指令集build后输出的静态库所在的目录每个指令集为一个静态库
THINpwd/thin-libtoolCOMPILEy
LIPOyif [ $* ]
then
if [ $* lipo ]
then
# skip compile
COMPILE
else
ARCHS$*
if [ $# -eq 1 ]
then
# skip lipo
LIPO
fi
fi
fiif [ $COMPILE ]
then
CWDpwd
echo $CWD/$SOURCE.........
for ARCH in $ARCHS
do
echo building $ARCH...
mkdir -p $SCRATCH/$ARCH
cd $SCRATCH/$ARCHif [ $ARCH i386 -o $ARCH x86_64 ]
then
PLATFORMiPhoneSimulator
if [ $ARCH x86_64 ]
then
SIMULATOR-mios-simulator-version-min7.0
HOSTx86_64-apple-darwin
else
SIMULATOR-mios-simulator-version-min5.0
HOSTi386-apple-darwin
fi
else
PLATFORMiPhoneOS
SIMULATOR
HOSTarm-apple-darwin
fiXCRUN_SDKecho $PLATFORM | tr [:upper:] [:lower:]
CCxcrun -sdk $XCRUN_SDK clang -arch $ARCH
#AS$CWD/$SOURCE/extras/gas-preprocessor.pl $CC
CFLAGS-stdliblibc -static -arch $ARCH $SIMULATOR
CXXFLAGS$CFLAGS
LDFLAGS$CFLAGSif [ $ARCH arm64 ]
then
echo 11
SSL_PATH--with-openssl/Users/relly/Lib/IOS/openssl-1.1.1t-modified/build/openssl_arm64
fiif [ $ARCH arm64e ]
then
echo 22
SSL_PATH--with-openssl/Users/relly/Lib/IOS/openssl-1.1.1t-modified/build/openssl_arm64e
fiif [ $ARCH x86_64 ]
then
echo 33
SSL_PATH--with-openssl/Users/relly/Lib/IOS/openssl-1.1.1t-modified/build/openssl_x86_64
fiecho $SSL_PATH
echo $ARCH ------------------------- $SSL_PATH CC$CC $CWD/$SOURCE/configure $SSL_PATH --disable-ldap \
$CONFIGURE_FLAGS \
--host$HOST \
--prefix$THIN/$ARCH \
CC$CC CFLAGS$CFLAGS LDFLAGS$LDFLAGSmake -j3 install
cd $CWD
done
fiif [ $LIPO ]
then
echo building fat binaries...
mkdir -p $FAT/lib
set - $ARCHS
CWDpwd
cd $THIN/$1/lib
for LIB in *.a
do
cd $CWD
lipo -create find $THIN -name $LIB -output $FAT/lib/$LIB
donecd $CWD
cp -rf $THIN/$1/include $FAT
fi
若出现compiler cannot create executables执行命令指定xcode路径 sudo xcode-select --switch /Users/relly/Downloads/Xcode.app/Contents/Developer/