提问人:afp_2008 提问时间:10/28/2023 最后编辑:afp_2008 更新时间:10/28/2023 访问量:55
使用 vcpkg 和 cmake 运行 uWebsockets 示例时出现问题
Issue running uWebsockets examples using vcpkg and cmake
问:
我想使用 vcpkg 清单模式构建 uWebsockets
C++ 库的 EchoServer.cpp
示例。
my-app
│ CMakeLists.txt
│ vcpkg.json
│
└───examples
CMakeLists.txt
EchoServer.cpp
vcpkg.json
内容:
{
"name": "myfirst",
"version-string": "1.0.0",
"dependencies": [
"uwebsockets"
]
}
CMakeLists的内容.txt
:
cmake_minimum_required(VERSION 3.24)
project(my-app VERSION 1.0.0)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
find_path(UWEBSOCKETS_INCLUDE_DIRS "uwebsockets/App.h")
add_subdirectory(examples)
示例\CMakeLists.txt
的内容:
cmake_minimum_required(VERSION 3.24)
project(projExamples VERSION 1.0.0)
set(CMAKE_CXX_STANDARD 20)
add_executable(EchoServerExample EchoServer.cpp)
target_include_directories(EchoServerExample PRIVATE ${UWEBSOCKETS_INCLUDE_DIRS})
工具链已通过 正确地传递到我的 CLion IDE。当我配置我的项目时,vcpkg 可以正常工作,并安装并打印以下消息:"DCMAKE_TOOLCHAIN_FILE=C:\Dev\vcpkg\scripts\buildsystems\vcpkg.cmake"
uWebsockets
...
The following packages will be built and installed:
* libuv[core]:x64-windows -> 1.46.0
* usockets[core]:x64-windows -> 0.8.6#1
uwebsockets[core]:x64-windows -> 20.45.0
* vcpkg-cmake[core]:x64-windows -> 2023-05-04
* vcpkg-cmake-config[core]:x64-windows -> 2022-02-06#1
* zlib[core]:x64-windows -> 1.2.13
...
find_path(UWEBSOCKETS_INCLUDE_DIRS "uwebsockets/App.h")
target_include_directories(main PRIVATE ${UWEBSOCKETS_INCLUDE_DIRS})
我不知道我应该如何在 in example 子目录中使用。因此,我在运行 .在我看来,它无法找到 : , , .uWebsockets
CMakeLists.txt
EchoServerExample.exe
uWebsockets
zlib
uv
uSockets
LINK : fatal error LNK1104: cannot open file 'uv.lib'
这是使用集成到我的项目目录中的正确方法吗?有人可以帮忙吗?提前致谢。uWebsockets
vcpkg.json
答: 暂无答案
评论
find_package
find_package(zlib REQUIRED)
find_package(uv REQUIRED)
uWebsockets
find_package(uWebsockets REQUIRED)
Could not find a package configuration file provided by "uWebsockets" with any of the following names: uWebsocketsConfig.cmake uwebsockets-config.cmake