私は、プロジェクト用にわずかに修正されたバージョンのGCCをビルドし、残りのプロジェクトをコンパイルする必要があります。私はこれを行うための最善の方法は何か不思議です。私は現在ExternalProject_Add
を使って他のバイナリの依存関係としてコンパイラをビルドしていますが、プロジェクトの一部のコンパイラの変更方法はわかりません。コンパイラを外部プロジェクトとしてコンパイルして使用しますか?
1
A
答えて
1
あなたの最善の策はおそらくスーパービルドとしてものを構成することです。トップレベルプロジェクトには、ExternalProject_Add
を使用して構築された2つのサブプロジェクトがあります。コンパイラは最初のサブプロジェクトになり、2番目のプロジェクトは実際のプロジェクトになります。実際のプロジェクトでは、実際のサブプロジェクトをコンパイラサブプロジェクトに依存させることでコンパイラを利用できます。
第2の代替案はdiscussed hereです。実際のプロジェクトはトップレベルプロジェクトのままですが、コンパイラはexternal_process()
によって呼び出されるサブビルドとしてビルドされています。私は現実の世界の状況にこのアプローチを使用しましたが、動作している間に、私はそれが少し洗練され、おそらく他の開発者が理解しているので、選択肢があれば個人的にはまだスーパービルドのアプローチになります。
最後に、hunterのようなものがあなたのためにコンパイラを構築できるかどうかを検討してください。どのようにGCCにパッチを当てる必要があるかによって、これは最も魅力的なアプローチかもしれません。
0
私は2つのCMakeプロジェクトを使用します.1つはコンパイラをビルドし、もう1つはビルドしたコンパイラで実際のプロジェクトをビルドします。 CMakeコンパイラは、CMakeのような不可欠な部分です。
すべてのプロジェクトを1つのプロジェクトにまとめたい場合は、実際のプロジェクトをadd_custom_command
と呼んでサブフォルダを呼び出すことができます。ユーザーとしては、これはより驚くかもしれませんが、より良い統合につながる可能性があります。
関連する問題
- 1. Node.jsをプロジェクトのスタンドアロンLESSコンパイラとして使用しますか?
- 2. Cygwinコンパイラを使用してQtプロジェクトをEclipseにコンパイルする
- 3. 外部ライブラリ(コードブロック)を使用してコンパイルできません
- 4. ClojureScriptでCljsbuildを使用して外部JSファイルをコンパイル
- 5. 外部EXEをスタートアッププロジェクトとして使用
- 6. 外部キーとしてvarbinaryを使用
- 7. Macでgccコンパイラを使用してC++ SDL2プログラムをコンパイルする
- 8. PHPをCakePHPで外部javascriptとして使用していますか?
- 9. xcode - Apple LLVMコンパイラ3.0を使用してPowerPC CPU用にコンパイル
- 10. 外部キーを使用してテーブルに挿入しますか?
- 11. Type_Scriptコンパイラがnode_modulesの外部ディレクトリを参照しています
- 12. は、私が使用してプロジェクトをコンパイルしようとしているANT
- 13. すべてのXcodeプロジェクトにデフォルトでLLVMコンパイラを使用しますか?
- 14. 外部パスワードストアを使用してOracleでsqlalchemy dburiを使用しますか?
- 15. Appium:Maven:cmdを使用してプロジェクトをコンパイルできません
- 16. UPDATEクエリを使用して外部キーを更新します。
- 17. IDEなしでMicrosoft C++コンパイラを使用してC++ライブラリをコンパイルする方法
- 18. VS2013 VS2015のC#プロジェクト:Roslynコンパイラを使用しますか?
- 19. 外部フレームワークをスタティックライブラリ/ iOS SDK用フレームワークにコンパイル/バンドルしてコンパイルする
- 20. フィラーC#を使用して外部URL
- 21. AngularJSは外部コントローラを渡して使用します
- 22. mingw32-gccコンパイラを使用してC#コードからプログラムコードをコンパイルする方法
- 23. Redmineを外部のWikiで使用していますか?
- 24. linq2sqlで関係/外部キーを使用していますか?
- 25. XObjectを使用して外部画像を使用したPDF
- 26. vim plugin sconsとg ++コンパイラを使用しているプロジェクト用に完成しました
- 27. djangoプロジェクトをデスクトップアプリケーションとしてコンパイル
- 28. typescriptプロジェクトをローカルモジュールとしてコンパイル
- 29. .csprojファイルを使用してDockerで.NETプロジェクトをコンパイルする
- 30. feathersjsプロジェクトでsequelizejsを使用して外部キーを作成する方法
LLVMのCMake Guruは同じ問題に直面しています。多分彼の解決策をチェックアウトする:http://lists.llvm.org/pipermail/llvm-dev/2016-August/104174.html – usr1234567