Xcode編譯慢打包慢解決方法

1. 提高XCode編譯時(shí)使用的線程數(shù)

defaults write com.apple.Xcode PBXNumberOfParallelBuildSubtasks 48 cpu 占用會(huì)特別高 達(dá)到150%的樣子,15寸 設(shè)置48比較好,否則操作其他因員工可能會(huì)卡

XCode默認(rèn)使用與CPU核數(shù)相同的線程來(lái)進(jìn)行編譯,但由于編譯過(guò)程中的IO操作往往比CPU運(yùn)算要多,因此適當(dāng)?shù)奶嵘€程數(shù)可以在一定程度上加快編譯速度。本人采用的是4核的CPU,將線程數(shù)改為8后編譯速度略有提升。

2.Debug Information Format改為DWARF

在工程對(duì)應(yīng)Target的Build Settings中,找到Debug Information Format這一項(xiàng),將Debug時(shí)的DWARF with dSYM file改為DWARF。

這一項(xiàng)設(shè)置的是是否將調(diào)試信息加入到可執(zhí)行文件中,改為DWARF后,如果程序崩潰,將無(wú)法輸出崩潰位置對(duì)應(yīng)的函數(shù)堆棧,但由于Debug模式下可以在XCode中查看調(diào)試信息,所以改為DWARF影響并不大。這一項(xiàng)更改完之后,可以大幅提升編譯速度。

// 這一條暫時(shí)不用管,默認(rèn)配置

3.Build Active Architecture Only改為Yes

在工程對(duì)應(yīng)Target的Build Settings中,找到Build Active Architecture Only這一項(xiàng),將Debug時(shí)的No改為Yes。

這一項(xiàng)設(shè)置的是是否僅編譯當(dāng)前架構(gòu)的版本,如果為No,會(huì)編譯所有架構(gòu)的版本。需要注意的是,此選項(xiàng)在Release模式下必須為Yes,否則發(fā)布的ipa在部分設(shè)備上將不能運(yùn)行。這一項(xiàng)更改完之后,可以顯著提高編譯速度。

在設(shè)置完以上三個(gè)項(xiàng)之后,相信編譯時(shí)間會(huì)縮短很多。

4.如何關(guān)掉CCache 提高編譯打包速度呢編寫(xiě)腳本,文件名稱ccache

  #!/bin/sh
  if type -p ccache >/dev/null 2>&1; then
  export CCACHE_MAXSIZE=10G
  export CCACHE_CPP2=true
  export CCACHE_HARDLINK=true
  export CCACHE_SLOPPINESS=file_macro,time_macros,include_file_mtime,include_file_ctime,file_stat_matches
指定日志文件路徑到桌面,等下排查集成問(wèn)題有用,集成成功后刪除,否則很占磁盤(pán)空間
 export CCACHE_LOGFILE='~/Desktop/CCache.log'
 exec ccache /usr/bin/clang++ "$@"
else
 exec clang++ "$@"
fi
ccache-clang++.sh

放到Xcode項(xiàng)目根目錄,然后

詳情見(jiàn)這篇帖子

http://www.itdecent.cn/p/c9e3fb3dfa53

5.去掉打包緩存

~/Library/Developer/Xcode/Products

最后編輯于
?著作權(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)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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