2012-07-23 103 views
17

我需要在iOS應用程序中使用libclang(用於診斷和語法突出顯示),但我似乎無法弄清楚如何構建它,更不用說iOS。使用CMake我爲LLVM生成了一個Xcode項目,但是Xcode的內存和磁盤空間不足以交換(合併的25GB!),並在打開項目時崩潰。我需要從中獲取一個靜態庫,然後我可以手動導入這些頭,這應該不是問題。我需要運行什麼configure/make/cmake命令[組合]?在iOS應用程序中嵌入libclang

注意:如果它有任何區別,我只需要Index.h文件中的函數。

在此先感謝。

回答

6

我已經創造了一系列的建設鐺文章。

你必須建立適用於iOS一些額外的挑戰,但這將是一個起點。

+0

@corristo在使用下面的標記進行編譯時,在此答案中,我收到錯誤'/Users/josh/Documents/xcode/iCode/libclang/build/llvm-build-make/include/llvm/Support/DataTypes.h: 36:10:致命錯誤:使用make構建LLVM時未找到'cmath'文件。有什麼建議麼?我失去了爲什麼。一些谷歌公司說[它建立了幾次後就消失了](http://lists.cs.uiuc.edu/pipermail/cfe-dev/2012-March/020366.html),但那不起作用爲了我。 – 2012-08-01 22:35:56

+0

看起來像包含在非C++文件中的DataTypes.h,所以它無法找到特定於C++的include = \奇怪,它能爲OS X構建好嗎? – 2012-08-07 07:53:38

+0

@JoshTheGeek既然你接受了這個答案,這些說明是否幫助你成功地編譯clang for armv7? – Ph99Ph 2012-08-10 16:31:50

2

生成簡單的makefile而不是OS Xcode項目,然後使用make構建?

使用這一個配置的cmake /使內部版本爲iOS: How can I make Cmake use specific compiler and flags when final compilation stage instead of detection?

+0

但是,如果我只是做./configure &&使這將建立爲OS X,正確的? – 2012-07-27 23:06:08

+0

嗯是的,我錯過了,對不起。然後嘗試使用xcodebuild構建xcode項目而不打開它。 – 2012-07-29 14:46:17

+0

那麼,這個鏈接對你來說還不夠嗎? – 2012-07-31 06:33:29