首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未能链接UnitTest++

未能链接UnitTest++
EN

Stack Overflow用户
提问于 2016-06-08 18:37:15
回答 1查看 337关注 0票数 0

我想在我的项目中使用UnitTest++,但是编译时出错了:

代码语言:javascript
复制
CMakeFiles/BNN.dir/main.cpp.o:-1: In function `main':
BNN/main.cpp:-1: error: undefined reference to `UnitTest::RunAllTests()'
:-1: error: collect2: error: ld returned 1 exit status

我在网上搜索答案,并尝试了几件事情,这就是我现在所拥有的:

代码语言:javascript
复制
project(BNN)
cmake_minimum_required(VERSION 2.8)

file(GLOB SRC "*.cpp" "src/*.h" "src/*.cpp")
file(GLOB DATA_FILE "*.md")

find_package(UnitTest++ REQUIRED)
include_directories(${UnitTest++_INCLUDE_DIRS})
set(LIBS ${LIBS} ${UnitTest++_LIBRARY})

add_executable(${PROJECT_NAME} ${SRC} ${DATA_FILE})
target_link_libraries(${PROJECT_NAME} ${LIBS})

我按照官方指南建造图书馆:

代码语言:javascript
复制
cd path/to/unittest-cpp/builds
cmake -G "<Choose a valid generator>" ../
cmake --build ./
sudo cmake --build ./ --target install

我的操作系统是ArchLinux。

我要做什么才能用cmake编译它呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-08 19:38:13

我通过将cmake文件更改为:

代码语言:javascript
复制
project(BNN)
cmake_minimum_required(VERSION 2.8)

include_directories(src)

file(GLOB SOURCES "*.cpp" "src/*.h" "src/*.cpp" "tests/*.cpp")
file(GLOB DATA_FILE "*.md")

add_executable(${PROJECT_NAME} ${SOURCES} ${DATA_FILE})
target_link_libraries(${PROJECT_NAME} ${CMAKE_SOURCE_DIR}/../unittest-cpp/builds/libUnitTest++.a)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37710344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档