Xcode10.2之后dyld: Library not loaded: | Terminated due to signal 6

在使用Xcode10.2之后鏡像錯(cuò)誤問題(注意 Xcode10.1是可以正常運(yùn)行的)

dyld: Library not loaded: @rpath/libswiftAVFoundation.dylib ? Referenced from: /private/var/containers/Bundle/Application/DD297E99-832D-41B9-AA50-B9A24E4BCC3C/IOSSDKDemo.app/Frameworks/IOSSDK.framework/IOSSDK ? Reason: image not found Message from debugger: Terminated due to signal 6

錯(cuò)誤圖片描述

列舉一下踩過的坑

1.使用install_name_tool工具修改路徑

參考$ install_name_tool -change @executable_path/libboost_something.dylib /opt/local/lib/libboost_something.dylib exefile

2.修改Required 為Optional

3.修改Always Embed Swift Standard Libraries 為YES (注意: 這個(gè)是一個(gè)必改項(xiàng),不管有沒有解決問題都要改成YES)

修改Build Settings?


4.在Build Phases下新建 New Copy Files Phase (這個(gè)是網(wǎng)上給出的最多的,感覺沒什么卵用 )

注意兩點(diǎn):

10.2打出來的包(swift 4.2/abi stable),需要用10.2的提供的dylib(swift 4.2/abi stable)同樣10.1打出來的包(swift 4.2/abi unstable),需要用10.1的提供的dylib(swift 4.2/abi unstable)

點(diǎn)擊+號(hào)新建


之后的添加和修改操作


5.下載Swfit 5動(dòng)態(tài)庫(kù)工具 (注意電腦版本只能在10.14.3之前才可以安裝,之后不能安裝。其實(shí)會(huì)默認(rèn)安裝這個(gè)工具)

工具下載地址 :可以在這里下載到? ?

6.強(qiáng)制修改Mach-O為靜態(tài)庫(kù)

7.查看是否有UI操作不是在主線程,更改過來


8.Targets-->General-->Embedded Binaries--> +? ?添加自己導(dǎo)入的framework 即可正確找到資源路徑

9.更新? brew 系列方式

brew update?

brew upgrade node

brew upgrade

brew install libpng

10 清理內(nèi)存 (兩種方式)

第一種:
Command + Shift + K

Comend + 逗號(hào)(,) 彈出清理

11.Runpath搜索路徑

更改為$(inherited) @executable_path/Frameworks

Runpath 路徑修改位置

12 證書清理并設(shè)置始終信任

1.打開鑰匙串 - 轉(zhuǎn)到Apple Worldwide Developer Cert。

2.雙擊它

3.從“始終信任”更改權(quán)限級(jí)別以使用系統(tǒng)默認(rèn)值

4.保存并關(guān)閉它

5.重新啟動(dòng)Xcode,清理并構(gòu)建項(xiàng)目,它應(yīng)該消失


總結(jié) :作者推薦以上方案如果還沒滿足你的需求 可以嘗試一下兩種方案解決。 (反正我是嘗試上面的還是沒有解決,萬能的網(wǎng)友推薦的方式列舉了一下)

方案一 :

在Xcode10.2之后明顯對(duì)Swfit5框架進(jìn)行了改動(dòng)? 可以看下文章鏈接 :?Swift 5發(fā)行說明Xcode 10?.2

工具的下載地址參考5

注:如果工具還是不起效 還是建議卸載Xcode10.2? 回退到Xcode10.1解決問題

方案二:

經(jīng)過多次測(cè)試發(fā)現(xiàn)是Swfit 編譯的SDK也是有相關(guān)問題的(猜測(cè)是Xcode10.1配置文件問題)

解決辦法:拿到源碼SDK在Xcode10.2上面重新打包 使用最新的SDK發(fā)現(xiàn)解決問題 (注意打包的時(shí)候如果真機(jī)調(diào)試最好選擇Generic iOS Device選項(xiàng),因?yàn)樵诎l(fā)現(xiàn)打包導(dǎo)入IPA也會(huì)發(fā)生莫名問題)

編譯時(shí)候選項(xiàng)建議


針對(duì)這個(gè)問題目前筆者提供以上方案,根據(jù)不同Xcode版本使用某一個(gè)方法可以直接解決。因?yàn)楣P者是嘗試上面所有方法均無效果。最后面才解決了標(biāo)題問題。 筆者在這里列舉網(wǎng)友提供的方法和自己已經(jīng)摸索嘗試成功解決的方法分享給大家。喜歡的點(diǎn)個(gè)贊支持一下

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容