Я хотел бы скомпилировать простой пример с использованием Clang, CMake и Ninja в Windows, чтобы точно соответствовать настройке сборки Linux C++. Я установил инструменты с помощью msys2. Однако, когда я запускаю «CMake: удалить кеш и переконфигурировать», кажется, что где-то пути перепутаны, и я получаю эту ошибку (путь к проекту добавляется сам к себе?):
[cmake] CMake Error: The source directory "/c/Users/UserName/Documents/Random/testproj/build/C:/Users/UserName/Documents/Random/testproj" does not exist.
Вот полный вывод:
[main] Configuring project: testproj
[proc] Executing command: C:\msys64\usr\bin\cmake.exe -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_C_COMPILER:FILEPATH=C:\msys64\usr\bin\clang.exe -DCMAKE_CXX_COMPILER:FILEPATH=C:\msys64\usr\bin\clang++.exe --no-warn-unused-cli -S C:/Users/UserName/Documents/Random/testproj -B c:/Users/UserName/Documents/Random/testproj/build -G Ninja
[cmake] CMake Error: The source directory "/c/Users/UserName/Documents/Random/testproj/build/C:/Users/UserName/Documents/Random/testproj" does not exist.
[cmake] Specify --help for usage, or press the help button on the CMake GUI.
[cmake] Not searching for unused variables given on the command line.
[proc] The command: C:\msys64\usr\bin\cmake.exe -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_C_COMPILER:FILEPATH=C:\msys64\usr\bin\clang.exe -DCMAKE_CXX_COMPILER:FILEPATH=C:\msys64\usr\bin\clang++.exe --no-warn-unused-cli -S C:/Users/UserName/Documents/Random/testproj -B c:/Users/UserName/Documents/Random/testproj/build -G Ninja exited with code: 1
Я могу воспроизвести проблему на следующем минимальном примере:
CMakeLists.txt
cmake_minimum_required(VERSION 3.20)
project(hello-world)
add_executable(hello-world main.cpp)
CMakePresets.json
{
"version": 3,
"configurePresets": [
{
"name": "default",
"hidden": true,
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
}
},
{
"name": "Debug",
"inherits": "default",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug"
}
},
{
"name": "Release",
"inherits": "default",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release"
}
}
],
"buildPresets": [
{
"name": "Debug",
"configurePreset": "Debug"
},
{
"name": "Release",
"configurePreset": "Release"
}
]
}
workspace.code-workspace
{
"folders": [
{
"path": "."
}
],
"settings": {
"cmake.cmakePath": "C:\\msys64\\usr\\bin\\cmake.exe"
}
}
main.cpp
#include
int main()
{
std::cout
Подробнее здесь: https://stackoverflow.com/questions/798 ... -cmaketool
Невозможно создать простой пример C++ в Windows — расширение cmake, ninja, vscode CMakeTools ⇐ C++
Программы на C++. Форум разработчиков
1770915742
Anonymous
Я хотел бы скомпилировать простой пример с использованием Clang, CMake и Ninja в Windows, чтобы точно соответствовать настройке сборки Linux C++. Я установил инструменты с помощью msys2. Однако, когда я запускаю «CMake: удалить кеш и переконфигурировать», кажется, что где-то пути перепутаны, и я получаю эту ошибку (путь к проекту добавляется сам к себе?):
[cmake] CMake Error: The source directory "/c/Users/UserName/Documents/Random/testproj/build/C:/Users/UserName/Documents/Random/testproj" does not exist.
Вот полный вывод:
[main] Configuring project: testproj
[proc] Executing command: C:\msys64\usr\bin\cmake.exe -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_C_COMPILER:FILEPATH=C:\msys64\usr\bin\clang.exe -DCMAKE_CXX_COMPILER:FILEPATH=C:\msys64\usr\bin\clang++.exe --no-warn-unused-cli -S C:/Users/UserName/Documents/Random/testproj -B c:/Users/UserName/Documents/Random/testproj/build -G Ninja
[cmake] CMake Error: The source directory "/c/Users/UserName/Documents/Random/testproj/build/C:/Users/UserName/Documents/Random/testproj" does not exist.
[cmake] Specify --help for usage, or press the help button on the CMake GUI.
[cmake] Not searching for unused variables given on the command line.
[proc] The command: C:\msys64\usr\bin\cmake.exe -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_C_COMPILER:FILEPATH=C:\msys64\usr\bin\clang.exe -DCMAKE_CXX_COMPILER:FILEPATH=C:\msys64\usr\bin\clang++.exe --no-warn-unused-cli -S C:/Users/UserName/Documents/Random/testproj -B c:/Users/UserName/Documents/Random/testproj/build -G Ninja exited with code: 1
Я могу воспроизвести проблему на следующем минимальном примере:
[b]CMakeLists.txt[/b]
cmake_minimum_required(VERSION 3.20)
project(hello-world)
add_executable(hello-world main.cpp)
[b]CMakePresets.json[/b]
{
"version": 3,
"configurePresets": [
{
"name": "default",
"hidden": true,
"generator": "Ninja",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": {
}
},
{
"name": "Debug",
"inherits": "default",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug"
}
},
{
"name": "Release",
"inherits": "default",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release"
}
}
],
"buildPresets": [
{
"name": "Debug",
"configurePreset": "Debug"
},
{
"name": "Release",
"configurePreset": "Release"
}
]
}
[b]workspace.code-workspace[/b]
{
"folders": [
{
"path": "."
}
],
"settings": {
"cmake.cmakePath": "C:\\msys64\\usr\\bin\\cmake.exe"
}
}
[b]main.cpp[/b]
#include
int main()
{
std::cout
Подробнее здесь: [url]https://stackoverflow.com/questions/79888276/unable-to-build-a-simple-c-example-on-windows-cmake-ninja-vscode-cmaketool[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия