[英]Error while linking libconfig with c++ using cmake?
这是我正在使用的 cmake 文件
cmake_minimum_required (VERSION 3.0)
project (midasd)
set (midas VERSION_MAJOR 0)
set (midas VERSION_MINOR 0)
set (midas VERSION_REVISION 1)
find_library(libconfig libconfig)
add_executable(midasd src/main.cpp)
target_link_libraries(midasd "${libconfig_LIBS}")
我面临的问题是config_init
未定义引用。 主要功能如下
#include <libconfig.h>
int main(int argc, char *argv[])
{
midas::midasCtx *container = new midas::midasCtx(argc,argv);
config_t cfg;
config_init(&cfg);
return 0;
}
CMAKE
哪里出了CMAKE
?
实际上,在链接参数中, libconfig
被简单地识别为-lconfig
而不是-llibconfig
。 CMakeLists.txt 应包含
target_link_libraries(my_project config)
本手册( https://hyperrealm.github.io/libconfig/libconfig_manual.html )说“要与库链接,请将'-lconfig++'指定为链接器的参数。”
所以我修复了以下代码并完成了构建。
target_link_libraries(my_project config++)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.