2017-03-27 27 views
0

私はcmakeを使ってVS2017ソリューション(とprojects ...)を生成していますが、私は別のフォルダにすべてを生成しようとしています。cmake、出力ディレクトリを指定する方法

私はコマンドラインと異なる変数の両方を使用しましたが、それは "ソース"フォルダに生成されません!ここで

は、私が試したもののいくつかの例です:

cd source 
cmake -B../build ... 

cd build 
cmake ../source 

cmake --build "../build" 

cmake -Dxxx=../build 

任意のアイデア?すべてのこれらのソリューションは、ビルドフォルダに生成されることが期待されています!

+0

。あなたはアウトソースビルドを試みていますよね?次に、CMakeはソースディレクトリと同じフォルダ構造を生成し、そのファイルをそこに配置します。あなたは何を期待していますか?結果はあなたの期待とどう違うのですか? – usr1234567

+0

私は生成されたすべてのファイルを、cmakelists.txtファイルがあるフォルダ以外の別のフォルダに置こうとします!例えば、../buildフォルダに.slnファイルが必要です。 – CDZ

+0

'build'はあなたのプロジェクトの一部ですよね?あなたのプロジェクトの外にnowフォルダを作成し、このディレクトリに移動して 'cmake 'を実行してください – usr1234567

答えて

0

あなたは(sourceディレクトリ内)インソースビルドを実行した後、それは外のソースプロジェクトを構築することは不可能である:すべてのそのような試みは、インソースのビルドを変更します。

アウトソースビルドを使用する前に、ソースディレクトリのビルドファイル(CMakeCache.txt、おそらく他のもの)をクリアする必要があります。

+0

ありがとう、そうですが、それは問題ではありません。私は毎回すべてを削除します! – CDZ

+0

もしそうなら、あなたは* out-of-source *をビルドできるはずです。たとえば、 'cd build && cmake ../ source'によって作成されます。このコマンドは正しく動作しますか? – Tsyvarev

+0

ありがとうございます。いいえ、うまくいきません:-( – CDZ

0

私は固定:私は本当にあなたの問題を理解していない

cd VSBuild 
cmake ../ 

代わりの

cd VSBuild 
cmake .. 
関連する問題