當我手動將我在 Xcode 13 中匯出的 SDK 添加到 xcode 13 和 xcode 14 時,它適用于所有設備,沒有任何問題。但是當我在 xcode 14 中匯出時,它僅適用于 xcode 13 中的模擬器,我無法在真實設備上構建,(在 xcode 14 中,它適用于所有設備,沒有任何問題)。對于我在 Xcode 14 中匯出的 SDK,我在 xcode 13 中在真機上運行時遇到的錯誤如下:
directory not found for option '-F/(framework path)'
Undefined symbols for architecture arm64:_objc_msgSend$subfiles
Undefined symbols for architecture arm64:_objc_msgSend$subfiles
...
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我洗掉了目錄未找到錯誤的框架搜索路徑并找到了解決方案,但是對于以下SDK的所有子檔案出現的錯誤,我找不到解決方案:
Undefined symbols for architecture arm64:_objc_msgSend$subfiles
和
clang: error: linker command failed with exit code 1 (use -v to see invocation)
非常感謝您的評論。
uj5u.com熱心網友回復:
經過長時間的研究,我找到了解決方案。Clang 在 Xcode 14 中發出 objc_msgSend;以前版本的 Xcode 不明白。這需要禁用。這是我用于解決方案的鏈接。此鏈接上提供了已提交的更改。非常感謝這些家伙。
順便說一句,從XCode > Preferences > Locations部分選擇命令列工具的 Xcode 14 的兼容版本,并更新Clang 版本(您可以在終端中鍵入 clang -v)以與此版本兼容。您可以在 Apple Clang - Custom Compiler Flags from Targets > Build Setting 下直接從 Xcode添加設定到C 標志-ObjC -std=c 14 -fno-exceptions -stdlib=libc -fno-objc-msgsend-selector-stubs
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/514419.html
