WindowsでCMakeを介して構成された多数のプロジェクトを構築するために使用しているpythonビルドスクリプトがあります。以前は、MSVC を使用してこれらのプロジェクトをビルドしていましたが、すべて問題ありませんでした。これらの python スクリプトを使用して、ICC をビルドに組み込みたいと考えています。必要に応じて、ネイティブ コンパイラを UI で直接選択できますが、すべてをプログラムで行いたいと考えています。
問題は、構文エラーで失敗するか、cmake オプションに注意を払っていないことです。
設定できます:
"CMAKE_CXX_COMPILER:PATH":"C:/Program Files (x86)/Intel/Composer XE 2013/bin/intel64/icl.exe",
"CMAKE_C_COMPILER:PATH":"C:/Program Files (x86)/Intel/Composer XE 2013/bin/intel64/icl.exe"
そして、cmakeItems
それは世代に供給される配列の一部です:
generate(x86Generator, cmakeItems, osName, buildTarget)
その他のオプションは、コマンド ライン スイッチ (x86generator
およびbuildTarget
) を介して設定されるか、デフォルトで設定されます (つまり、osName
スクリプト自体で検出されます)。
何かを試す前に、実行したコマンドラインプロンプトからこれを実行しています
iclvars intel64
icc bin ディレクトリで、すべての icc 変数が適切に構成さicl
れていることを確認します。コマンド ラインに入力して、パスにあることを確認できます。
上記を実行すると、C コンパイラがデフォルトの msvc コンパイラのままになります。
私も実行してみました:
set(CMAKE_C_COMPILER_INIT icl)
set(CMAKE_CXX_COMPILER_INIT icl)
しかし、それは私にicl部分で構文エラーを与えています. おそらくパスの問題だと思いましたが、次のことを行っています。
set(CMAKE_C_COMPILER_INIT "C:\Program Files (x86)\Intel\Composer XE 2013\bin\intel64\icl")
set(CMAKE_CXX_COMPILER_INIT "C:\Program Files (x86)\Intel\Composer XE 2013\bin\intel64\icl")
構文エラーも出ています。
では、cmake を呼び出す Python スクリプトから C/CXX コンパイラをプログラムで設定するにはどうすればよいでしょうか?