簡體   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