0

这是我正在使用的 cmake 配置

cmake_minimum_required (VERSION 3.0)

project (Project)

set (CMAKE_CXX_FLAGS_DEBUG "-std=c++11 -O0 -DDEBUG -g")
set (CMAKE_C_FLAGS_DEBUG "-std=c++11 -O0 -DDEBUG -g")
set (CMAKE_CXX_FLAGS_RELEASE "-std=c++11 -O3")
set (CMAKE_C_FLAGS_RELEASE "-std=c++11 -O3")

add_subdirectory (external/libwebsockets)
include_directories (external/libwebsockets/lib)

include_directories (src/globals)

add_library (libwebsockets SHARED IMPORTED)

add_executable (Project src/main.c)

target_link_libraries (Project libwebsockets)

Libwebsockets已作为 git 子模块添加到external/libwebsockets. 使用上述配置构建时出现以下错误

In file included from /home/Project/server/src/main.c:2:0:
/home/Project/server/external/libwebsockets/lib/libwebsockets.h:43:24: fatal error: lws_config.h: No such file or directory
compilation terminated.
CMakeFiles/Project.dir/build.make:62: recipe for target 'CMakeFiles/Project.dir/src/main.c.o' failed
make[2]: *** [CMakeFiles/Project.dir/src/main.c.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/Project.dir/all' failed
make[1]: *** [CMakeFiles/Project.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2

有人可以帮我解决我哪里出错了,我CMake是否正确编写了配置脚本?

4

1 回答 1

0

找不到以下文件:

lws_config.h:没有这样的文件或目录编译终止。

libwebsockets.h第 43 行引用时:

libwebsockets.h:43:24:

这是在编译时生成的main.c

在 /home/Project/server/src/main.c:2:0 包含的文件中:

你知道你的子模块树中是否有“lws_config.h”吗?

于 2017-06-14T06:08:59.970 回答