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