• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

iOS 条件链接静态库

[复制链接]
菜鸟教程小白 发表于 2022-12-11 20:36:40 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有一个为 armv7 和 i386 编译的胖静态库。在我的 iPhone/iPad 项目中,一切正常,但我只能在 armv7 设备上安装我的应用程序,所以 iPhone 3gs 及更高版本...

有一种方法可以在 armv6 上运行我的项目,因此我可以将它安装在 ipod touch 和旧 iphone 版本上(如果我禁用 armv7 库的使用)。

我试试这个:

#ifdef _ARM_ARCH_7
... //include and use of armv7 library
#else
... //not include armv7 library
#endif

但是当我编译我的项目时出现链接错误...

命令/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/clang++ 失败,退出代码为 1

所以有一种方法可以在所有类型的设备上运行我的应用程序,但在为 armv7 编译时链接特定库???

感谢您的帮助!



Best Answer-推荐答案


您需要弱链接该库。打开build设置并找到其他链接器标志。您需要添加两个条目,第一个是“-weak_library”,第二个是库文件的路径(您可能需要搜索传递给链接器的内容以找到这是什么)。

它们需要按这个顺序排列,因为这个列表会按照它们出现的顺序变成链接器的参数。

关于iOS 条件链接静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8298076/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap