我必须在我的项目中支持OpenSSL为UIKitForMac构建iPad应用程序。目前,我发现了这些错误。
为Mac构建UIKit,但链接库'libssl.a‘是为独立构建的。您可能需要限制应该在目标编辑器中链接此库的平台。 为Mac构建UIKit,但链接库‘libcryption.a’是为独立构建的。您可能需要限制应该在目标编辑器中链接此库的平台。
我读过关于XCFrameworks的文章,但是苹果并没有在这里发布太多的信息。有人想出了构建方案吗?
发布于 2019-12-27 15:44:37
评论中的解决方案对我不起作用。但是,我只是像以前那样构建不同的库: iOS,通过添加构建参数:-target x86_64-apple-ios13.0-macabi和在-isysroot中定义Mac,为-isysroot构建另一个libs。之后,我只需有条件地为每个构建版本添加每个库,它就能工作了。
发布于 2020-05-26 16:00:15
在许多失败的尝试和谷歌搜索之后,我越来越沮丧,我成功地为催化剂构建了openSSL 1.1.1g,编译了我的项目,链接了openSSL,并通过以下操作在我的Mac上启动了这个应用程序:
<openSSL directory>/Configurations/10-main.conf。向下滚动到"darwin64-x86_64-cc"部分,我添加了第二行CFLAGS:=> add("-target x86_64-apple-ios13.0-macabi"),
./Configure darwin64-x86_64-cc -shared注意到,我看到了这个配置语句的其他几个版本,其中一些还有更多的选项。这个命令对我有效,但我不知道其他所有的变体都做些什么。你可能想进一步研究这个问题。make clean以清除先前IOS构建中的所有对象make这个成功构建的openSSL。+添加新条目,在弹出窗口的左下角选择"add“,然后提供新构建的libcryp.a的路径。对libssl.a重复cd ~/Library/Developer/Xcode mv DerivedData DerivedData.old
第5-7步被证明是关键的步骤。即使我移动和/或完全替换了以前的库,当我尝试用Xcode构建时,我会得到我为MacOS Catalina构建的链接器错误,但是我试图链接为MacOS x86构建的东西。
https://stackoverflow.com/questions/56459036
复制相似问题