(發佈這個問題僅供參考,我會立即回答)添加系統標題搜索路徑到Xcode
如何添加標題搜索路徑到Xcode? 包括特別是當這種語法:
include <myheader.h>
- 添加全局路徑如系統頭的所有項目。
- 僅將路徑添加到特定項目。
(發佈這個問題僅供參考,我會立即回答)添加系統標題搜索路徑到Xcode
如何添加標題搜索路徑到Xcode? 包括特別是當這種語法:
include <myheader.h>
我們有兩種選擇。
查看Xcode首選項中的Preferences-> Locations - >「Source Trees」。此處添加的路徑將是系統級路徑,可供所有項目使用。
設置HEADER_SEARCH_PATHS
建立項目信息的設置參數。我在這裏添加了"${SRCROOT}"
而沒有遞歸。此設置適用於大多數項目。
關於第二個選項:
Xcode使用鏘擁有GCC兼容的指令集。 GCC has an option -Idir
它增加了系統頭搜索路徑。這個選項可以通過Xcode項目構建設置中的HEADER_SEARCH_PATHS
訪問。
但是,添加到此設置的路徑字符串不應包含任何空格字符,因爲該選項將按原樣傳遞給shell命令。
但是,一些OS X用戶(如我)可能會將他們的項目放在包括空白的路徑上,應該被轉義。如果您手動輸入,您可以像/Users/my/work/a\ project\ with\ space
那樣轉義它。您也可以使用引號將它們轉義爲使用環境變量,如"${SRCROOT}"
。
或者只是使用.
來表示當前目錄。我在Webkit的源代碼中看到了這個技巧,但我不確定在構建它時當前目錄將被設置爲項目目錄。
${SRCROOT}
是由Xcode預定義的值。這意味着源目錄。您可以在Reference document中找到更多值。
PS。其實你不必使用大括號{}
。我得到與$SRCROOT
相同的結果。如果你知道區別,請告訴我。
僅爲了完整性而使用引號。
"/Users/my/work/a project with space"/**
如果沒有遞歸,刪除/**
此外,請確保如上所示使用大括號表示變量,而不是圓形變體。後者似乎導致具有空格的項目的解析問題。 – 2011-05-25 09:00:11
跟進到Eonil的答案,項目級的設置有關。選擇目標並選擇「構建設置」選項卡後,搜索路徑下可能不會列出標題搜索路徑。在這種情況下,您可以從搜索欄中的「基本」更改爲「全部」,並且標題搜索路徑將顯示在搜索路徑部分。
雖然這個問題有一個答案,但當我遇到同樣的問題時,我解決了這個問題。我在使用選項Create Folder references
複製文件夾時遇到此問題;那麼上面的解決方案將文件夾添加到build_path工作。 但是,當使用Create groups for any added folder
選項添加文件夾時,會自動選取標題。
請注意,$ {SRCROOT}是包含.xcodeproj目錄的目錄,*不是* Xcode放置源文件的目錄(至少在我的Xcode 4.6.3上)。爲了獲得我的信息來源,我必須更深入一層。 – 2013-10-13 04:16:03
有或沒有大括號的區別在於,帶大括號的路徑可以包含空白區域。 – 2014-12-31 22:29:25
LOVE YOU FOR BACKSLASH TRICK – 2015-12-22 01:15:37