这是我正在使用的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的 undefined reference 。主要功能如下
#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在哪里出错?

最佳答案

实际上,在链接参数中,libconfig仅被识别为-lconfig而不是-llibconfig。 CMakeLists.txt应该包含
target_link_libraries(my_project config)
Source

关于c++ - 使用cmake将libconfig与c++链接时出错?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43746492/

10-11 06:45