GCCでコンパイルされたプロジェクトでは、
- 各ターゲット タイプ (デバッグ/リリース) に対して CMake を実行するにはどうすればよいですか?
- CMake を使用してデバッグおよびリリース C/C++ フラグを指定するにはどうすればよいですか?
g++
メインの実行可能ファイルが でコンパイルされ、 でネストされたライブラリが 1 つコンパイルされることをどのように表現すればよいでしょうかgcc
?
ベストアンサー1
CMakeでは、一般的に「ソース外」ビルドプロジェクトのルートに を作成しますCMakeLists.txt
。次に、プロジェクトのルートから次の操作を実行します。
mkdir Release
cd Release
cmake -DCMAKE_BUILD_TYPE=Release ..
make
そしてDebug
(再びプロジェクトのルートから):
mkdir Debug
cd Debug
cmake -DCMAKE_BUILD_TYPE=Debug ..
make
Release
/ はDebug
コンパイラに適切なフラグを追加します。ビルド構成RelWithDebInfo
もあります。MinSizeRel
フラグを変更/追加するには、ツールチェーンファイル追加できるCMAKE_<LANG>_FLAGS_<CONFIG>_INIT
変数、例:
set(CMAKE_CXX_FLAGS_DEBUG_INIT "-Wall")
set(CMAKE_CXX_FLAGS_RELEASE_INIT "-Wall")
見るビルドタイプ詳細については。
3 番目の質問については、正確に何を尋ねているのかわかりません。CMake は、さまざまなソース ファイルに適したコンパイラを自動的に検出して使用するはずです。