#c #cmake #vcpkg
Вопрос:
Итак, мой скриншот рабочего пространства После некоторой попытки я не могу Заставить Cmake Найти необходимые пакеты, даже после того, как я сделал все, как показано в vcpkg
cmake_minimum_required(VERSION 3.0.0)
project(TEst VERSION 0.1.0)
include(CTest)
enable_testing()
set(CMAKE_TOOLCHAIN_FILE "N:/Vc-PKG/vcpkg/scripts/buildsystems/vcpkg.cmake")
find_package(glfw3 CONFIG REQUIRED)
target_link_libraries(TEst PRIVATE glfw)
add_executable(TEst main.cpp)
set(CPACK_PROJECT_NAME ${PROJECT_NAME})
set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
include(CPack)
и мой каталог установки Vcpkg находится N:Vc-PKGvcpkg
я также добавил эти строки в vscode
"C_Cpp.default.includePath": [
"N:/Vc-PKG/vcpkg/installed/x64-windows/include",
"N:/Vc-PKG/vcpkg/installed/x86-windows/include",
],
"c-cpp-flylint.cppcheck.includePaths": [
"N:\Vc-PKG\vcpkg\installed\x64-windows\include",
"N:\Vc-PKG\vcpkg\installed\x86-windows\include",
],
"cmake.generator": "MinGW Makefiles",
Результат, который я получаю Для следующего:
[main] Configuring folder: Junks
[proc] Executing command: N:MSYS64mingw64bincmake.EXE --no-warn-unused-cli -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER:FILEPATH=N:MSYS64mingw64binx86_64-w64-mingw32-gcc.exe -DCMAKE_CXX_COMPILER:FILEPATH=N:MSYS64mingw64binx86_64-w64-mingw32-g .exe "-Hl:/Programming Projects/Vs Code/Junks" "-Bl:/Programming Projects/Vs Code/Junks/build" -G "MinGW Makefiles"
[cmake] Not searching for unused variables given on the command line.
[cmake] CMake Error at CMakeLists.txt:7 (find_package):
[cmake] Could not find a package configuration file provided by "glfw3" with any of
[cmake] the following names:
[cmake]
[cmake] glfw3Config.cmake
[cmake] glfw3-config.cmake
[cmake]
[cmake] Add the installation prefix of "glfw3" to CMAKE_PREFIX_PATH or set
[cmake] "glfw3_DIR" to a directory containing one of the above files. If "glfw3"
[cmake] provides a separate development package or SDK, be sure it has been
[cmake] installed.
[cmake]
[cmake] -- Configuring incomplete, errors occurred!
[cmake] See also "L:/Programming Projects/Vs Code/Junks/build/CMakeFiles/CMakeOutput.log".
[cmake]
Пожалуйста, любая помощь была бы очень благодарна, сри, если бы я допустил ошибку, это первый раз, когда я публикую вопрос.
Комментарии:
1. Ты уже
vcpkg integrate install
сделал это ?2. Да , я уже сделал интегрированную установку vcpkg, она отлично работала на моем домашнем ПК с помощью Visual Studio, купите мой ноутбук в Vscode, я не смог заставить его работать
3. Установил ли ypu где-нибудь vcpkg_DIR(в
env
или в cmakelists.txt )?
Ответ №1:
Вы не можете установить CMAKE_TOOLCHAIN_FILE
после вызова на project()
. Это команда, отвечающая в первую очередь за загрузку файла набора инструментов. Переместите его перед вызовом в project()
или еще лучше: установите его в командной строке или в предустановке.
Кроме того, если вы на самом деле не используете CMake 3.0.0, вам не следует устанавливать его как минимум. CMake не совместим с форвардами, поэтому, не протестировав его на минимальной версии, вы не сможете узнать, будет ли он работать так далеко назад.
Комментарии:
1. @M. F. R. Siam — Рад помочь и добро пожаловать в StackOverflow! Если этот ответ решил вашу проблему, пожалуйста, подумайте о том, чтобы принять его (галочка) и/или проголосовать за него (стрелка вверх).