我有一臺舊電腦,無法升級到Lion,但我想用它進行編碼,同時仍利用語法,如instancetype
和Objective-C文字。有沒有人試圖編譯一個更新的Clang和LLVM與舊的Xcode一起使用並獲得成功?是否可以編譯LLVM的新版本並將其與Xcode一起使用?
回答
有多種方法可以使用最新的LLVM/Clang版本。
(1)插件,如上面的註釋,例如描述: http://blog.wadetregaskis.com/tot-clang-llvm-in-xcode/
作爲鏈接的博客文章指出,你可能會得到錯誤/從Xcode的實時語法警告檢查爲Xcode中使用舊版本的libclang(更多關於(3))。它很可能編譯得很好,但編輯源代碼不會很有趣。 (2)通過設置編譯器CC
標誌。這可能是最簡單/最快的解決方案,並且該設置僅影響一個項目。進入項目的構建設置,選擇「添加生成設置」 - >「添加用戶定義的設置」(在Xcode 5中,這隱藏在編輯器菜單中),將其命名爲CC
並將值設置爲您的路徑鏗鏘的版本。對我來說工作得很好,但和(1)一樣,您可能會與實時錯誤報告發生衝突,特別是如果您想使用文字等新語法,或者傳遞舊版本不明白的警告標誌時。
(3)替換編譯器。確保在替換之前備份任何文件。有兩個文件需要被替換:Clang二進制文件和libclang.dylib。進入/Applications/Xcode.app/
- >選項 - 點擊 - >「顯示包裝內容」 - >/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr
。鐺在/bin
,libclang.dylib在/lib
。
這兩個二進制文件都可以從源代碼編譯(當然會給你一個更新的版本),或者從最新的Xcode包複製。我用自定義版本的libclang遇到了麻煩,但我懷疑問題來自我在那裏的修改。如果有疑問,請使用來自更高版本Xcode的libclang。
注意:我修改後的libclang二進制文件使用ARC,因此與Xcode 4不兼容,後者與垃圾收集一起運行。 Xcode 5本身使用ARC,因此問題消失了。如果您未經修改地編譯libclang,則不應在Xcode 4或5中遇到問題。
真棒資訊,謝謝。 – 2013-05-03 15:12:00
- 1. 是否可以將AnyChart的HTML版本與React一起使用?
- 2. 是否可以使用gold linker編譯並鏈接Clang/LLVM?
- 3. 什麼是與Xcode捆綁在一起的LLVM版本?
- 4. 如何檢查Xcode正在使用的LLVM編譯器版本?
- 5. 攪拌機的最新版本是否可以與Python 2.7一起使用?
- 6. 是否可以在網站中使用與IKVM一起編譯的Gephi?
- 7. 是否有可能將Qt Creator 2.7與visual studio 2012編譯器一起使用,並具備其所有功能?
- 8. 如何使用Xcode LLVM編譯器編譯並使用Haskell作爲C庫?
- 9. 我可以使用LLVM(在Xcode中)編譯針對OS X 10.5及更高版本的應用程序嗎?
- 10. 與gwt-maven-plugin一起使用自編譯的GWT SDK版本
- 11. drive.comments.insert與以前版本一起使用,不是當前版本
- 12. 編譯器錯誤LLVM Xcode版本4.6.1(4H512)
- 13. 新的Omniauth 1.0.0是否可以與Devise一起使用?
- 14. findOrCreateBy是否可以與其他域實例一起使用?
- 15. 是否可以將.c和.cpp(來自openCV)編譯並鏈接在一起?
- 16. 是否可以將Antlr的gUnit與C++目標一起使用?
- 17. 是否可以將F#與新的Windows Universal應用程序一起使用?
- 18. 是否可以在一個styles.xml版本中編寫代碼,並讓其他版本引用該代碼?
- 19. xcode - 使用Apple LLVM編譯器3.0編譯PowerPC CPU
- 20. 是否可以將JavaFX的PerspectiveTransform與新的Canvas類一起使用?
- 21. 是否可以將Workflow ReceiveActivity與獨立編寫的WCF服務一起使用?
- 22. 是否可以在不重新編譯的情況下更改Passenger Ruby版本?
- 23. 是否可以反編譯NSIS腳本?
- 24. Xgrid如何與Xcode一起用於並行編譯?
- 25. 是否在Xcode 4.2中使用兼容LLVM的GCC 4.2編譯iOS靜態庫?
- 26. 如何安裝最新版本的apple llvm編譯器?
- 27. 是否可以將AVAudioRecorder與MPMusicPlayerController一起使用?
- 28. 是否可以將WSDL與REST Web服務一起使用?
- 29. 是否可以將@StepScope與@Conditional和jobParameters一起使用?
- 30. 是否可以將@XmlHeader與Jackson一起使用?
可能但不受官方支持。谷歌「叮噹幹線Xcode插件」開始。 – justin 2013-04-28 10:02:03
@justin我期待着在這一條路上脫穎而出。謝謝你指出我的方向。 – 2013-04-28 10:44:22
不客氣。幸運的是,其他人已經描述了它並提供了插件供您使用。 – justin 2013-04-28 10:53:33