#c #cmake
Вопрос:
Работает на генераторе ниндзя, и в настоящее время мне не удается запустить тестовый код в CMake с этим выводом:
Есть какие-нибудь мысли?
Код серьезности Описание Ошибка состояния подавления строки файла проекта Ошибка CMake при C:/Program Файлы (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.20/Modules/CMakeTestCCompiler.cmake:66 (сообщение): Компилятор языка Си
"C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe"
не в состоянии скомпилировать простую тестовую программу.
Это приводит к сбою со следующим выводом:
Change Dir: C:/Users/jamieza/source/repos/CMakeProject2/out/build/x64-Debug/CMakeFiles/CMakeTmp Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe cmTC_59a30 amp;amp; [1/2] Building C object CMakeFilescmTC_59a30.dirtestCCompiler.c.obj [2/2] Linking C executable cmTC_59a30.exe FAILED: cmTC_59a30.exe cmd.exe /C "cd . amp;amp; "C:Program Files (x86)Microsoft Visual Studio2019CommunityCommon7IDECommonExtensionsMicrosoftCMakeCMakebincmake.exe" -E vs_link_exe --intdir=CMakeFilescmTC_59a30.dir --rc=rc --mt=CMAKE_MT-NOTFOUND --manifests -- C:PROGRA~2MIB055~12019COMMUN~1VCToolsMSVC1429~1.301binHostx64x64link.exe /nologo CMakeFilescmTC_59a30.dirtestCCompiler.c.obj /out:cmTC_59a30.exe /implib:cmTC_59a30.lib /pdb:cmTC_59a30.pdb /version:0.0 /machine:x64 /debug /INCREMENTAL /subsystem:console kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib amp;amp; cd ." RC Pass 1: command "rc /fo CMakeFilescmTC_59a30.dir/manifest.res CMakeFilescmTC_59a30.dir/manifest.rc" failed (exit code 0) with the following output: The system cannot find the file specified ninja: build stopped: subcommand failed.
CMake не сможет правильно сгенерировать этот проект. C:/Program Файлы (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.20/Modules/CMakeTestCCompiler.cmake 66
Комментарии:
1. Попробуйте запустить CMake из командной строки собственных средств Visual Studio 2019, чтобы правильно настроить переменные среды для компиляции.
2. Я думаю
--mt=CMAKE_MT-NOTFOUND
, в этом и заключается проблема3. Можно ли смешивать ниндзя и cl.exe? Это ни на что не похоже.
4. @sweenish — это абсолютно возможно. Я делаю это все время (из собственной командной строки).