以上所有解决方案都对我不起作用,所以我继续尝试为运行 Mac OSX 10.15.4 的系统修复它。
就我而言,这是上述解决方案停止为我工作的地方:
no such sysroot directory: '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.4.sdk' [-Wmissing-sysroot]
我通读了 build-libssl.sh 文件,注意到 sdk 版本是由脚本使用以下代码获取的:
xcrun -sdk macosx --show-sdk-version
在我的系统上确实返回:
10.15.4
使用 finder 导航到该位置:
'/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
确实告诉我确实没有MacOSX10.15.4.sdk。但是有一个 MacOSX10.14.sdk。我确实利用这些知识提出了以下解决方案:
OpenSSL 版本 <= 1.0 (1.0.2l)
版本 <= 1.0 应该只使用 --arch,而不是 --target !
git clone git@github.com:marcelosalloum/OpenSSL-for-iPhone.git --branch feature/mac-catalyst && \
cd OpenSSL-for-iPhone && \
./build-libssl.sh --arch="MacOSX_x86_64 i386 arm64 armv7s armv7 tv_x86_64 tv_arm64" --macosx-sdk=10.15 --version="1.0.2l"
OpenSSL 版本 >= 1.1 (1.1.0) 目前不起作用
>= 1.1 的版本应该只使用 --target,而不是 --arch !
git clone git@github.com:marcelosalloum/OpenSSL-for-iPhone.git --branch feature/mac-catalyst && \
cd OpenSSL-for-iPhone && \
./build-libssl.sh --targets="mac-catalyst-x86_64 ios-sim-cross-i386 ios64-cross-arm64 ios-cross-armv7s ios-cross-armv7 tvos-sim-cross-x86_64 tvos64-cross-arm64" --macosx-sdk=10.15 --version="1.1.0" -v