ios庫衝突解決辦法

2021-06-28 19:39:21 字數 718 閱讀 5448

1. 報錯顯示***x.o檔案,在build phrase裡面搜尋這個類名,把顯示出來的那幾個 .m檔案給remove掉

2. 如果兩個靜態庫衝突的結構是相同的,可以考慮將兩個靜態庫拆分出來進行合併。

檢視檔案的架構有哪些

$ lipo -info libzbar.a

architectures in the fat file: libzbar.a are: armv7 (cputype (12) cpusubtype (11)) i386 

將armv7解壓出來

lipo libzbar.a -thin armv7 -output libzbar-armv7.a

新建立乙個資料夾出來存放解壓的(.o)檔案

$ mkdir armv7

$ cd armv7

將靜態庫中的檔案解壓

$ ar -x ../libzbar-armv7.a

然後將另乙個靜態庫根據以上的步驟做一遍,然後觀察連個解壓的靜態庫中,有那些是一樣的就合併在一起,不過注意的是兩個靜態庫衝突的(.o)檔案必須一致,否則也會出現錯誤。

合併完後進行打包了

$ libtool -static -o ../libnew-armv7.a *.o

如果像在虛擬機器也使用,進行相同的步驟後,將i386的架構合併再一起就可以了。

合併靜態庫

$ lipo -create lib.a lib.b -output new.a

IOS lib a 庫衝突解決辦法

在引入第三方lib a 庫時,經常會由於第三方lib庫中又引入同你現有工程相同的開源 而造成.o衝突,最近在整合漢王名片識別時發生asihttp的.o衝突。我想說的是像這種開源的使用率很高的源 本不應該包含在lib庫中,就算是你要包含那也要改個名字是吧。不過沒辦法現在人家既然包含,我們就只有想辦法分...

GitLab埠衝突 解決辦法

訪問gitlab,出現 502 gitlab在使用的過程中,會開啟80埠,如果80埠被其他的應用程式占用,則gitlab的該項服務不能使用,所以訪問gitlab會失敗。大多數皆是此問題。還要注意gitlab還要使用8080埠,因此要注意可以把gitlab埠改為別的無服務占用的埠。改gitlab埠 1...

雜湊儲存和衝突解決辦法

一 雜湊表的概念及作用 一般的線性表,樹中,記錄在結構中的相對位置是隨機的,即和記錄的關鍵字之間不存在確定的關係,因此,在 結構中查詢記錄時需進行一系列和關鍵字的比 較。這一類查詢方法建立在 比較 的基礎上,查詢的 效率依賴於查詢過 程中所進行的比較次數。理想的情況是能直接找到需要的記錄,因此必須在...