2016-12-21 60 views
2

cmakeファイルを使用してビジュアルスタジオ(2015)用のプロジェクトを作成すると、デフォルトでリリースモードで最適化レベルがO2に設定されます。cmakeによるビジュアルスタジオの最適化設定の設定

これをcmakeファイル内の他の値に変更する方法が見つかりません。さらに、私はプログラムデータベース(.pdb)をビルドする必要があります。

は、私が試した:

SET(CMAKE_CXX_FLAGS "-O0") 
SET(CMAKE_C_FLAGS "-O0") 

SET(CMAKE_CXX_FLAGS_RELEASE "-O0") 
SET(CMAKE_C_FLAGS_RELEASE "-O0") 

をここに提案されたように:

https://unix.stackexchange.com/questions/187455/how-to-compile-without-optimizations-o0-using-cmake

を成功せず。誰も正しい方法を知っていますか?アントニオの答えは私のためのソリューションをされた後

string(REPLACE "-O2" "-O0" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") 
string(REPLACE "-O2" "-O0" CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE}") 
+3

オンスタックオーバーフローでは、質問ポストと解決策**分離**を維持する傾向があります。 'SOLVED'節を追加する代わりに、[あなた自身の質問で回答を投稿することができます](http://stackoverflow.com/help/self-answer)。この機能はあなたのケースに完全に合っています:ご使用ください。 – Tsyvarev

+0

それを知ってよかったです。その固定! – GpG

答えて

1

私はこのコードを使用します。

SET(CMAKE_CXX_FLAGS_RELEASE "/Od /Zi") 
+0

ありがとう、これは助け! – GpG

1

First change the optimization setting: 
string(REPLACE "/O2" "/Od" CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") 

Than add a flag that creates program database file: 
string(CONCAT CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}" " /Zi") 

また、これは動作しますが、呼び出しの前にCMAKE_CXX_FLAGS_RELEASEに設定したすべてのものをクリアし

関連する問題