仍以前文在Mac上编译openssl为例
编译arm版本库
./Configure darwin64-arm64-cc
make
编译x86版本库
./Configure darwin64-x86_64-cc
make
合并两个版本的库
lipo -create ./Arm64lib/libcrypto.a ./X8664lib/libcrypto.a -output libcrypto.a
lipo -create ./Arm64lib/libssl.a ./X8664lib/libssl.a -output libssl.a
查看库支持
% lipo -info ./X8664lib/libssl.a
Non-fat file: ./X8664lib/libssl.a is architecture: x86_64
% lipo -info ./Arm64lib/libssl.a
Non-fat file: ./Arm64lib/libssl.a is architecture: arm64
% lipo -info libssl.a
Architectures in the fat file: libssl.a are: x86_64 arm64
% lipo -info libcrypto.a
Architectures in the fat file: libcrypto.a are: x86_64 arm64