簡體   English   中英

Xcode找不到#Include <>標頭

[英]Xcode cannot find #Include<> header

我正在嘗試讓Xcode導入Irrlicht的頭文件。

#include <irrlicht.h>

它說“Irrlicht.h。沒有這樣的文件或目錄”。 是的Irrlicht.h帶有大寫字母I,即使#include是小寫的。

無論如何,我在Xcode項目的標題搜索路徑中添加了“/lib/irrlicht-1.6/include”,但它仍然沒有找到它。

我嘗試過的唯一有效的方法是:

#include "/lib/irrlicht-1.6/include/irrlicht.h"

這有點荒謬,#include應該有用,我不明白為什么它不起作用。

更新(以下是有關錯誤的更多詳細信息):

/lib/PAL/pal_benchmark/palBenchmark/main.h:31:0
/lib/PAL/pal_benchmark/palBenchmark/main.h:31:22: error: irrlicht.h: No such file or directory

我想通了。 也許有人可以評論為什么會這樣。

標題位於此目錄中:

/lib/irrlicht-1.6/include/

如果我將該路徑添加到:“Header Search Paths”,Xcode在構建項目時仍然找不到路徑。

解決方案:將標題路徑添加到: “用戶標題搜索路徑”

令我難以理解為什么我必須這樣做,因為我經常將我的標題路徑添加到“標題搜索路徑”,然后#includes只是工作。 希望這可以幫助那些得到同樣問題的其他人。

#include <irrlicht.h> 

#include "irrlicht.h" 

只要gcc的“-I”參數包含封閉頭文件的目錄的路徑,它就應該工作。 is part of /usr/include the "-I" option is no longer required. 如果是/ usr / include的一部分,則不再需要“-I”選項。

我知道這是一個老帖子,但它確實在谷歌上排名很高,所以我想我會添加一些信息

在XCode 3.2.6下,我遇到了XCode無法找到頭文件的問題。 事實證明,其中一個文件路徑包含一個空格,而XCode對它進行了不正確的解釋。

例如:使用類似“Users / Username / Desktop / Project / Some Headers”的路徑

以下是GCC Commandline的摘錄:“ - I / Users / Username / Desktop / Project / Some”“ - I / Headers”

要查看XCode提供的構建日志,這里有一個很好的教程: 如何顯示Xcode的構建日志? (嘗試驗證是否正確創建了iPhone分發構建zip。)

對於這種情況,更簡單,更方便的解決方案是將包含.h文件的目錄(在本例中為/lib/irrlicht-1.6/include)拖放到項目文件中,而不是明確地將include路徑添加到項目設置中。窗格。 這當然會將標題添加到項目中,並且可以輕松瀏覽它們並搜索符號等,還可以將目錄路徑添加到gcc編譯中,這樣您就不必顯式管理包含路徑。

此外,平面文件層次結構不是您想要的。 將文件拖入Xcode會使您的層次結構變得扁平化。 例如,當您想要具有多個目標時,該目標具有“TargetName / settings.h”文件。 您將擁有許多您需要通過其文件夾名稱保持唯一的settings.h文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM