2012-01-27 53 views
1

我剛剛得到了最新的Xcode 4.2,並且遇到了openmp問題。我有幾個用C語言編寫的項目,編譯Xcode 3.2.6時沒有任何問題,但新版本發生了奇怪的事情。 我的一個項目產生一個靜態庫,當我編譯它,我得到這個錯誤(不是警告):在Xcode 4.2中的openmp

Lexical or Preprocessor Issue 
'omp.h' not found 

我已經啓用了OpenMP的支持和選擇的LLVM GCC 4.2編譯。雖然我得到這個錯誤,但靜態庫仍然生成。

認爲它可能是2個不同版本的xcode之間的轉換問題,我用Xcode v4.2創建了另一個項目,帶有一個簡單的hello world-like程序。我得到完全相同的錯誤,程序按照它應該運行。如果我使用命令行xcodebuild編譯這個項目,我不會收到任何錯誤。

有沒有人遇到過這個問題?

回答

2

是的,我有完全相同的問題。不確定這實際上是一個真正的問題,因爲該項目似乎被正確編譯。 我很想知道這背後的問題。

編輯:最後,沒有錯誤。問題只是來自Xcode 4 LLVM引擎,它在編輯器中不斷顯示錯誤。它無法解析路徑。不知道爲什麼。

如果你想擺脫那個「錯誤」的,你可以使用,而不是直接路徑:

/usr/llvm-gcc-4.2/lib/gcc/i686-apple-darwin10/4.2 .1/include/omp.h

+0

謝謝,它爲我工作。 – 2012-10-08 09:06:08

1

儘管主題很舊,但我遇到了與Xcode 5.1相同的問題。

但是,使用直接路徑不適合我,因爲我必須在開發人員組中共享代碼。

這裏的問題是我認爲,Xcode和使用的編譯器沒有相同的搜索路徑,所以Xcode在編譯器沒有找到頭。 我的工作解決此問題由標題複製到一組框架的文件夾:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include

這解決了這個問題對我來說。