2016-09-19 9 views
0

ここでclakeとgccで働いているcmakeを試してみましたが、私はこれまでに最も凶悪なものだと思っています。cmakeはclangのウィンドウスタイルのフラグを使用して失敗しました。try_compile

私はubuntuでcmakeのclangを使って完全にコンパイルする小さなhello world-ishプログラムを持っています。セットアップは超高速で、試してみると楽しいものです。
私は方法がより多くの問題を抱えている、私はMinGW w64をインストールし、続いてclang(64ビット)と最後にcmake(VS 15は学校プロジェクトのために以前はinsalledされていた) ほとんどがコンパイルされ、ビルドディレクトリがクリアされ、cmake .. -G"MinGW Makefiles"を私のビルドフォルダに入れてみると、コンパイルが全くできなくなるまで、別のcmakeものでうんざりしました。私が代わりに得たのは、コンパイルに失敗したというエラーでした。
cmakeのtry_compileは/nologoのようなMSVCスタイルフラグをclangに渡そうとします。clangはフラグがディレクトリであると考えます。

フラグを通常の-flagのように強制する方法が見つかりませんでした。
設定可能な非表示のcmake変数がいくつかありますか?この特定の設定でコンパイルするのは難しいですか?

+0

どのCMakeのバージョンを使用しますか? 'clang'サポートは最近、正式に追加されました。例えば、 [ここ](http://stackoverflow.com/questions/38171878/how-do-i-tell-cmake-to-use-clang-on-windows) – Florian

+0

@Florian私はcmake 3.6.2を使用していますが、CMakeLists.txtの上部には 'cmake_minimum_required(3.6)'があり、NMakeまたはMinGWメイクファイルを使用しても違いはありません。 – MetroidChild

+0

clangにはVS互換モードがあるので、cmakeはおそらくVSでビルドしたいと考えています。しかし、私はそれを修正する方法を知らない。 – xaxxon

答えて

1

フラグに-fmsc-version = 0を追加すると、CMakeはMSVCのシミュレーションを想定しません。

これはチェックされたhereです。

+0

これまで最高の答え。私はこれを働かせるように努力しました。あなたの答えのおかげで、私はついに非常に基本的なCMakeツールチェインファイルを構築することができました。ありがとう! –

関連する問題