繁体   English   中英

使用 cmake 将 libconfig 与 c++ 链接时出错?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM