iOS開發(fā) .pch文件路徑問題

iOS開發(fā) .pch文件的 應(yīng)用

原文地址:http://www.itdecent.cn/p/67ce72c4ad6c

只是最后有點(diǎn)自己的總結(jié)O(∩_∩)O~

在Xcode6之前,創(chuàng)建一個(gè)新工程xcode會(huì)在Supporting files文件夾下面自動(dòng)創(chuàng)建一個(gè)“工程名-Prefix.pch”文件,也是一個(gè)頭文件,pch頭文件的內(nèi)容能被項(xiàng)目中的其他所有源文件共享和訪問。是一個(gè)預(yù)編譯文件。

首先說一下pch的作用:

1.存放一些全局的宏(整個(gè)項(xiàng)目中都用得上的宏)

2.用來包含一些全部的頭文件(整個(gè)項(xiàng)目中都用得上的頭文件)

3.能自動(dòng)打開或者關(guān)閉日志輸出功能

雖然用了很久的Xcode6但是項(xiàng)目是xcode5之前創(chuàng)建好的,所以一開始并沒有發(fā)現(xiàn)缺少了這個(gè)pch文件。蘋果為什么要這么做呢,原因可能是因?yàn)榇蠹野汛罅康念^文件和宏定義放到pch里邊,導(dǎo)致編譯時(shí)間過長。蘋果去掉他可能是要加快編譯時(shí)間增加用戶體驗(yàn)。雖然失去了編程的便利性。不得不佩服蘋果的以用戶為中心的思考方式。更詳細(xì)的討論可以去Stackoverflow上去看http://stackoverflow.com/questions/24158648/why-isnt-projectname-prefix-pch-created-automatically-in-xcode-6。

如何在Xcode中添加pch文件:

Command+N,打開新建文件窗口:ios->other->PCH file,創(chuàng)建一個(gè)pch文件

1-1

2

在工程的TARGETS里邊Building Setting中搜索Prefix Header,然后把Precompile Prefix Header右邊的NO改為Yes:

2-1

3

然后在Precompile Prefix Header下邊的Prefix Header右邊雙擊,添加剛剛創(chuàng)建的pch文件的工程路徑,添加格式:“$(SRCROOT)/項(xiàng)目名稱/pch文件名” ,$(SRCROOT)的意思就是工程根目錄的意思。如果還不太清楚的話可以右鍵pch文件,然后show in finder:

3-1
3-2

上圖中黃色圈出來的就是$(SRCROOT),也就是工程的根目錄,然后后邊還有一個(gè)PchText和pch兩個(gè)文件夾,所以完整的pch文件的路徑就是:$(SRCROOT)/PchText/pch

3-3
3-4

添加完成后,他會(huì)自動(dòng)幫你變成你工程所在的路徑:

可以了,編譯一下程序,如果有錯(cuò)誤檢查一下添加的路徑是否正確。

4

將Precompile Prefix Header為YES,預(yù)編譯后的pch文件會(huì)被緩存起來,可以提高編譯速度

4-1


個(gè)人總結(jié):

路徑問題,我用的時(shí)候是在總文件夾里邊,發(fā)現(xiàn)不對,然后就沒有用,我直接把.pch文件拖進(jìn)去終端里邊拿到的路徑,放在第四步驟里邊,就OK啦

// 2017年6月19日更新

一般來說:$(SRCROOT)/項(xiàng)目名稱/pch文件名, 其實(shí)$(SRCROOT)后邊的內(nèi)容就是,pch前邊的文件夾名/pch文件名

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

相關(guān)閱讀更多精彩內(nèi)容

  • Xcode6之后不再創(chuàng)建pch預(yù)編譯文件,今天簡單介紹一下預(yù)編譯文件的創(chuàng)建及使用。 在Xcode6之前,創(chuàng)建一個(gè)新...
    Ray_win閱讀 676評論 0 1
  • (1).存放一些全局的宏(整個(gè)項(xiàng)目中都用得上的宏) (2).用來包含一些全部的頭文件(整個(gè)項(xiàng)目中都用得上的頭文件)...
    凸阿濱閱讀 3,300評論 0 3
  • pch的有什么作用 1、存放一些全局的宏(整個(gè)項(xiàng)目中都用得上的宏)2、用來包含一些全部的頭文件(整個(gè)項(xiàng)目中都用得上...
    高高叔叔閱讀 283評論 0 1
  • 首先說一下pch的作用:1.存放一些全局的宏(整個(gè)項(xiàng)目中都用得上的宏)2.用來包含一些全部的頭文件(整個(gè)項(xiàng)目中都用...
    ShanJiJi閱讀 8,529評論 0 7
  • 昨天寶爸回來不自己開門,而是敲門!我沒去開門讓他自己開。等了一會(huì)兒,見我沒開就自己掏鑰匙開門。進(jìn)門第一句話說你在那...
    心上蓮花開閱讀 120評論 0 0

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