undefined reference to dlopen…

在使用CMake构建sqlite项目时,出现undefined reference to dlopen, dlclose, dlsym and dlerror

/root/workspace/sqlite_test/sqlite/lib/libsqlite.so: undefined reference to `dlopen'
/root/workspace/sqlite_test/sqlite/lib/libsqlite.so: undefined reference to `dlclose'
/root/workspace/sqlite_test/sqlite/lib/libsqlite.so: undefined reference to `dlerror'
/root/workspace/sqlite_test/sqlite/lib/libsqlite.so: undefined reference to `dlsym'
collect2: error: ld returned 1 exit status
make[2]: *** [main] Error 1
make[1]: *** [CMakeFiles/main.dir/all] Error 2
make: *** [all] Error 2

解决方案

# target_link_libraries 后面把选项 -ldl添加上即可
add_executable(main ${SRC_MAIN})
target_link_libraries(main sqlite dl)
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐