将OpenSSL lib加载到MacOS应用程序

时间:2017-04-25 05:33:44

标签: openssl dylib

我无法将OpenSSL合并到我的MacOS应用程序中以验证Apple的收据。 这就是我得到的:

  

dyld:未加载库:/usr/local/ssl/lib/libcrypto.1.0.0.dylib

这就是我正在做的事情:

我使用此脚本编译我的OpenSSL库:

#!/bin/bash

OPENSSL_VERSION="1.0.1e"

curl -O -L http://www.openssl.org/source/openssl-$OPENSSL_VERSION.tar.gz
tar -xvzf openssl-$OPENSSL_VERSION.tar.gz
mv openssl-$OPENSSL_VERSION openssl_i386
tar -xvzf openssl-$OPENSSL_VERSION.tar.gz
mv openssl-$OPENSSL_VERSION openssl_x86_64
cd openssl_i386
./Configure darwin-i386-cc -shared
make
cd ../
cd openssl_x86_64
./Configure darwin64-x86_64-cc -shared
make
cd ../
lipo -create openssl_i386/libcrypto.dylib openssl_x86_64/libcrypto.dylib -output libcrypto.dylib
lipo -create openssl_i386/libssl.dylib openssl_x86_64/libssl.dylib -output libssl.dylib
rm openssl-$OPENSSL_VERSION.tar.gz

这给了我libssl.dyliblibcrypto.dylib

然后我用我的podfile运行pod install

target 'MyApp' do
use_frameworks!
pod 'OpenSSL', '~> 1.0'
end
然后我尝试运行我的项目:

dyld: Library not loaded: /usr/local/ssl/lib/libcrypto.1.0.0.dylib
  Referenced from: /Users/me/Source/myApp/DerivedData/myApp/Build/Products/Debug/myApp.app/Contents/MacOS/myApp
  Reason: image not found

我知道我还没有添加librypto lib,但为什么它会尝试在/usr/local/ssl/lib/中找到它?我应该把它放在哪里?

1 个答案:

答案 0 :(得分:0)

感谢您的评论,最后我通过使用其他广告OpenSSL-Universal

解决了这个问题