一、GMSSL-2.x
国密SDK源码下载,对GMSSL库进行编译生成对应的静态库。执行如下命令:
-
cd到SDK源码目录
cd /Users/xxxx/Downloads/GMSSLV2-master
-
查看SDK适用环境
./config
上图中错误解决方法
使用文本编辑器打开SDK目录下Configure、test/build.info、test/run_tests.pl。 use if $^O ne "VMS", "File::Glob" => qw/glob/; 改为 use if $^O ne "VMS", "File::Glob" => qw/:glob/;
-
使用make命令进行编译
make
-
编译armv7/armv7s架构
- 清理编译文件
make distclean
- 设置编译器 ,编译armv7s只需将armv7替换成armv7s即可
export CC="clang -arch armv7"
- 设置工具链路径
export PATH="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin:$PATH"
- 设置开发环境目录
export CROSS_TOP=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
- 设置SDK,版本在开发环境目录下SDKs中查看
export CROSS_SDK=iPhoneOS17.2.sdk
- 设置最小依赖版本
export IPHONEOS_DEPLOYMENT_TARGET=8.0
- 生成makefile
./Configure ios-cross no-shared -DGMSSL_NO_TURBO
- 构建
make
-
编译arm64架构
- 清理编译文件
make distclean
- 设置编译器
export CC="clang -arch arm64"
- 设置工具链路径
export PATH="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin:$PATH"
- 设置开发环境目录
export CROSS_TOP=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer
- 设置SDK,版本在开发环境目录下SDKs中查看
export CROSS_SDK=iPhoneOS17.2.sdk
- 设置最小依赖版本
export IPHONEOS_DEPLOYMENT_TARGET=8.0
- 生成makefile
./Configure ios64-cross no-shared -DGMSSL_NO_TURBO
- 构建
make
-
编译i386和x86_64
- 清理编译文件
make distclean
- 设置编译器
export CC="clang -arch i386 -arch x86_64"
- 设置工具链路径
export PATH="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin:$PATH"
- 设置开发环境目录
export CROSS_TOP=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer
- 设置SDK,版本在开发环境目录下SDKs中查看
export CROSS_SDK=iPhoneSimulator17.2.sdk
- 设置最小依赖版本
export IPHONEOS_DEPLOYMENT_TARGET=8.0
- 生成makefile
./Configure iphoneos-cross no-shared -DGMSSL_NO_TURBO
- 构建
make
-
静态库合并
- 合并命令
lipo -create 模拟器.a文件路径 真机.a文件路径 -output 合成的.a文件路径
- 查看静态库信息
lipo -info .a文件路径