16-12-21更新
對(duì)以前項(xiàng)目進(jìn)行pod install --verbose --no-repo-update
然后編譯運(yùn)行跃洛,報(bào)出如下錯(cuò)誤:
ld: library not found for -lPods clang: error: linker command failed with exit code 1 (use -v to see invocation)
這個(gè)錯(cuò)誤比較常見屈芜,一般是因?yàn)槲募貜?fù)茉盏,也可能是其他原因催首。這里是因?yàn)?code>.a文件重復(fù)。解決如下:
target>Build Phases>Link Binary With Librasies
看這里是否存在兩個(gè)libPods
,以前的是這個(gè)libPods.a
欣孤,使用新的cocoapods
生成的是libPods-XXX.a
.然后刪除老的.a
就好了。昔逗。
這是我刪除之后的樣子降传。
然后clean
之后run
一下,是不是好了勾怒?
把更新記錄收集一下搬瑰。
閱前需知:
1、我是將系統(tǒng)從
10.10.5
更新成10.12.1
控硼,跨度有點(diǎn)大泽论。。狀況太多卡乾。翼悴。
2、我對(duì)Podfile
的使用不是太熟,基本都是常規(guī)用法鹦赎,不確定是從哪個(gè)版本開始要這么用來著谍椅。。我是從0.39.0
到1.1.1
古话。
3雏吭、因?yàn)檫@是個(gè)更新過程記錄,前面會(huì)有我踩的坑陪踩,如果參考的話杖们,最好看完,避免按照我的情況再踩一下肩狂。摘完。
4、問題的處理基本都是看錯(cuò)誤信息傻谁,一看就懂的直接處理孝治,不懂的就搜索(所以說搜索是個(gè)好東西),搜的東西太多审磁,所以參考的鏈接就不放了谈飒。。
來來态蒂,開始步绸。
先檢查gem
的安裝。
gem
之前可以檢查一下rvm
rvm -v
rvm 1.25.28 (stable) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
以前在哪里看過吃媒,好像gem的安裝與rvm的版本有關(guān)瓤介。具體忘記了。赘那。我的是這個(gè)刑桑。然后我也沒管,應(yīng)該沒太大影響募舟。祠斧。你可以忽略。拱礁。
檢查gem sources
gem sources -l //顯示當(dāng)前的gem源琢锋。
默認(rèn)應(yīng)該是這個(gè),我的是之前裝cocoapods
的之后改成taobao
的了
*** CURRENT SOURCES ***
https://rubygems.org/
然后刪除并添加國(guó)內(nèi)可以使用的gem
源
gem sources --remove https://rubygems.org/
或者 gem sources -r url
刪除后添加新的gem
源
gem sources -a http://rubygems-china.oss.aliyuncs.com
//這是個(gè)新的gem源
還有一個(gè)在維護(hù)的 https://gems.ruby-china.org/
之前有https://ruby.taobao.org
好像不維護(hù)了(據(jù)說)呢灶,不過我沒換吴超,好像現(xiàn)在還能用。鸯乃。
確定gem
源沒有問題之后鲸阻,進(jìn)行升級(jí)。。
sudo gem install cocoapods //以前都是這么用的鸟悴。陈辱。
會(huì)出現(xiàn)下面的錯(cuò)誤:
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
查了下,蘋果系統(tǒng)升級(jí) OS X EL Capitan 后會(huì)出現(xiàn)的插件錯(cuò)誤细诸,現(xiàn)在用下面這句
sudo gem install -n /usr/local/bin cocoapods
按他說的弄沛贪,安裝成功后
pod setup
之后可能需要很久時(shí)間。然后出現(xiàn)
Setting up CocoaPods master repo
Performing a deep fetch of the `master` specs repo to improve future performance
[!] /usr/bin/git -C /Users/Pro/.cocoapods/repos/master fetch --unshallow
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
等了半天白等了震贵。利赋。
然后網(wǎng)上查到的結(jié)果說,遠(yuǎn)程終端誤認(rèn)為操作停止了
.這就很尷尬了屏歹。隐砸。
分析原因說:一種是Mac
待機(jī)了之碗,然后下載失敗了蝙眶。。
我的情況屬于他說的第二種褪那。幽纷。
請(qǐng)求超時(shí)而失敗
, 這個(gè)是因?yàn)橄螺d請(qǐng)求在一定的時(shí)間內(nèi)博敬,沒有得到響應(yīng)友浸,造成遠(yuǎn)程終端中斷下載。
來偏窝,看看怎么解決收恢。
cd /etc/ssh //進(jìn)入ssh
sudo vi ssh_config //編輯ssh_config
按i進(jìn)入編輯模式,直接到最后一行祭往,加入伦意。
ServerAliveInterval 30 //設(shè)置超時(shí)時(shí)間30s
OK了之后,點(diǎn)擊esc
,然后:wq
保存之前編輯的硼补。驮肉。
以上設(shè)置超時(shí)時(shí)間,不曉得到底有沒有用已骇。离钝。不過我覺得下面很重要,因?yàn)檫@個(gè)真是在下東西褪储。卵渴。
git clone https://git.coding.Net/CocoaPods/Specs.git ~/.cocoapods/repos/master
這個(gè)是走的國(guó)內(nèi)的鏡像,在coding
上的鲤竹。比github
的快奖恰。。反正這樣看的見,比較直觀瑟啃。论泛。
如果出現(xiàn)
fatal: destination path '/Users/XXX/.cocoapods/repos/master' already exists and is not an empty directory.
好吧,人家說的很明白蛹屿,刪了就好了屁奏。。
刪除命令用這個(gè)
sudo rm -rf ~/.cocoapods/
好了之后就繼續(xù)執(zhí)行上一句错负。坟瓢。然后你就看到了。犹撒。
Cloning into '/Users/XXX/.cocoapods/repos/master'...
remote: Counting objects: 955157, done.
remote: Compressing objects: 100% (419819/419819), done.
remote: Total 955157 (delta 447722), reused 954747 (delta 447312)
Receiving objects: 100% (955157/955157), 355.21 MiB | 433.00 KiB/s, done.
Resolving deltas: 100% (447722/447722), done.
是不是終于看到下載東西了折联,要喜極而泣了。识颊。這個(gè)過程也比較久诚镰,但是看到百分之多少的在漲,感覺比看不到強(qiáng)很多祥款。清笨。
最后完成了的時(shí)候,再次使用
pod setup
然后就是等待了刃跛。抠艾。這次不再是遙遙無期了。桨昙。然后他會(huì)嘩啦啦出來一堆東西检号,應(yīng)該是下載什么之類的,不用管蛙酪,沒意外的話齐苛,最后你會(huì)看到一行綠字。我的是這樣的滤否。
CocoaPods 1.2.0.beta.1 is available.
To update use: `sudo gem install cocoapods --pre`
[!] This is a test version we'd love you to try.
For more information, see https://blog.cocoapods.org and the CHANGELOG for this version at https://github.com/CocoaPods/CocoaPods/releases/tag/1.2.0.beta.1
Setup completed
這樣就OK了脸狸。來,試一下藐俺。炊甲。進(jìn)入項(xiàng)目路徑
pod install --verbose --no-repo-update
然后。欲芹。????
[!] Invalid `Podfile` file: The target `Pods` already has a platform set..
# from /Users/pro/Desktop/企金融/Podfile:5
# -------------------------------------------
#
> platform :ios, '7.0'
# pod 'Masonry'
# -------------------------------------------
下面還有一堆卿啡,心累就不貼了。菱父。
這說的是我的Podfile文件有問題颈娜,我以前就是這么用的啊啊啊剑逃。。
以前是這么用的官辽。蛹磺。
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '7.0'
pod 'AFNetworking', '~> 2.6'
platform :ios, '7.0'
pod 'Masonry'
platform :ios,'7.0'
pod 'SVProgressHUD','~> 1.1.3'
...
看意思是 我的platform :ios,'7.0'
寫多了。同仆。刪了去萤捆。。
然后繼續(xù)俗批。
Preparing
Analyzing dependencies
[!] The dependency `AFNetworking (~> 2.6)` is not used in any concrete target.
...
好像是因?yàn)闆]有指定target的原因俗或。
改成這個(gè)樣子
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '7.0'
target 'YourTarget' do
pod 'AFNetworking'
end
然后再試。
好像有點(diǎn)成功的樣子岁忘。辛慰。然后到ReactiveCocoa
的時(shí)候卡了好久。干像。最后來了個(gè)這帅腌。。
error: RPC failed; curl 56 SSLRead() return error -9806
fatal: The remote end hung up unexpectedly
查了查蝠筑,說是網(wǎng)絡(luò)問題狞膘,然后不用管揩懒,再來一次什乙。。
終于看到了已球。
-> Pod installation complete! There are 11 dependencies from the Podfile and 11 total pods installed.
大功告成臣镣。。
文末補(bǔ)充兩個(gè)查到的智亮,可能用的到的東西忆某。
1、針對(duì)安裝多個(gè)xcode
的阔蛉。錯(cuò)誤信息沒記錄弃舒。。安裝多個(gè)的状原,可以執(zhí)行一下聋呢,也不多什么。颠区。記得Xcode.app
根據(jù)實(shí)際情況修改削锰。
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
2、在執(zhí)行了pod setup
之后,會(huì)出現(xiàn)Setting up CocoaPods master repo
,然后會(huì)卡很久毕莱,其實(shí)他在下載東西器贩。要是想知道下載了多少颅夺,可以用下面的。
cd ~/.cocoapods
du -sh *
du -sh *
是linux
下當(dāng)前查看文件夾大小的蛹稍。以后在別的地方也用得到吧黄。。
希望對(duì)你們有幫助唆姐。稚字。