Sto sviluppando un'applicazione multipiattaforma (Linux/Windows) in C. Mi sono stancato di gestire sia un Makefile utilizzabile che il Visual Studio soluzione/progetti quindi volevo passare a cmake. Sto usando Intel Compiler su entrambe le piattaforme.Come generare un progetto di Visual Studio che utilizza Intel Compiler utilizzando cmake sotto Windows
Ho scaricato cmake 3.0 su Windows e cmake 2.8 su Linux (è quello in repository di ubuntu 12.04). Su Linux tutto è andato liscio e i Makefile sono stati generati con successo. Era una questione semplice di esecuzione: CC=icc CXX=icc cmake ..
.
Su Windows, tuttavia, indipendentemente dal comando che provo, non posso utilizzare Intel Compiler. L'output vcxproj utilizza sempre il compilatore MSVC.
Ho provato il seguente comando:
cmake -G "Visual Studio 11 2012 Win64" -D CMAKE_C_COMPILER="C:/Program Files (x86)/Intel/Composer XE/bin/intel64/icl.exe" -D CMAKE_CXX_COMPILER="C:/Program Files (x86)/Intel/Composer XE/bin/intel64/icl.exe" ..
Il risultato è:
-- The C compiler identification is MSVC 17.0.61030.0
-- The CXX compiler identification is MSVC 17.0.61030.0
-- Check for working C compiler using: Visual Studio 11 2012 Win64
-- Check for working C compiler using: Visual Studio 11 2012 Win64 -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler using: Visual Studio 11 2012 Win64
-- Check for working CXX compiler using: Visual Studio 11 2012 Win64 -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
Quando cambio il generatore a "NMake Makefiles" quindi ICC è impostato come il compilatore.
-- The C compiler identification is Intel 14.0.3.20140422
-- The CXX compiler identification is Intel 14.0.3.20140422
-- Check for working C compiler: C:/Program Files (x86)/Intel/Composer XE/bin/intel64/icl.exe
sto testando questo su un progetto piuttosto semplice, con un solo file sorgente, in modo mio file CMakeLists.txt contiene solo:
project(dummy_cmake)
add_executable(hellonikola main.c)
Ogni aiuto è molto apprezzato!
P.S.
cmake-gui si comporta allo stesso modo. Seleziono per specificare un compilatore nativo diverso e dare il percorso a icc e ottenere gli output di cui sopra pure.
Ho provato a usare cmake 2.8 anche su Windows e il comportamento è lo stesso.
Ho lo stesso problema riscontrato quando si utilizza il generatore come "Makefile NMake". La tua soluzione non ha funzionato nel mio caso però. – tejas