首页 文章

动态库映像不包含x86_64,i386体系结构

提问于
浏览
2

我正在尝试为iOS构建动态库,并结合体系结构

  • armv7

  • armv7s

  • arm64

  • i386

  • x86_64

这是我的目标的构建设置
enter image description here

如您所见,我已将x86_64和i386添加到体系结构和有效体系结构中,同时“仅构建活动体系结构”设置为 NO .

因此,在构建我的二进制文件之后,我通过在终端中运行 file myDl.dylib 来检查支持的体系结构

myDl.dylib (for architecture armv7):    Mach-O dynamically linked shared library arm  
myDl.dylib (for architecture arm64):    Mach-O 64-bit dynamically linked shared library

所以这意味着它已经为armv7和arm64编译,并且 dlopen() 在模拟器上失败,错误"Unsupported architecture" .

我究竟做错了什么?

PS . 当我使用自定义构建脚本并使用"lipo"工具创建胖库时,它工作正常,但我不喜欢这种方式,我想让它在Xcode上正常工作 .

1 回答

  • 2

    在有效的体系结构中设置armv7,armv7s和arm64,并确保使用任何必须包含64位支持的第三方框架 .

相关问题