繁体   English   中英

具有动态库的32位应用程序在64位设备上崩溃

[英]32-bit App with dynamic library crash on 64-bit device

我正面临以下情形:

  • 32位设备+应用程序armv7 +动态库armv7 arm64 = 工作
  • 64位设备+应用程序armv7 +动态库armv7 arm64 = 不起作用

不起作用 -应用程序加载时崩溃,并显示以下错误:

dyld错误消息库未加载原因找不到合适的图像

有什么解释吗?

说明 :由于在iOS 9中将32位页面大小从4096字节更改为16384字节,因此无法在64位设备上加载32位二进制文​​件。

结论 :具有动态库的32位应用程序不能在64位设备上运行。

解决方案 (两个就足够了):

  • 在动态库项目中的“其他链接器”标志中添加一个新条目:

    -Wl,-segalign,4000

  • 更新应用程序本身以支持arm64架构

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM