CMake似乎没有链接CppUnit

时间:2013-05-31 11:06:40

标签: linker cmake cppunit ctest

这可能已经在某个地方得到了回答,所以如果是的话,请指出正确的方向 - 在google搜索时我找不到任何与我的具体问题相符的内容!

我正在尝试运行一些CppUnit测试。

我的顶级CMakeLists.txt包含:

include_directories(
    ${CPPUNIT_INC}
)
link_directories(
    ${CPPUNIT_LIB}
)

两者都设置正确:我在CMakeLists.txt文件中先前打印了路径,它们是正确的。

在子文件夹中,我有;

add_executable(test-lumberjack TestLumberjack.cpp)
target_link_libraries(
    test-lumberjack
    Lumberjack
    CppUnit
    ${CMAKE_DL_LIBS}
)
INSTALL(TARGETS test-lumberjack DESTINATION ${PROJECT_OUTPUT_TEST_DIR})
ADD_TEST(NAME test-lumberjack COMMAND "${PROJECT_OUTPUT_TEST_DIR}/test-lumberjack")

但是,当我运行测试时(通过运行文件或使用ctest -V),我看到常见的链接器错误 编辑:它不是链接器错误,请参阅回答如下

该库肯定存在于顶级CMakeLists.txt中设置的路径中。

我很难过!我假设有一些我完全不知道的关键,但我不知道它是什么。如果您想了解更多信息,请告诉我,我会添加它。

干杯。

1 个答案:

答案 0 :(得分:1)

我是个白痴:CppUnit文件夹不在我的库路径中。应该在运行时崩溃时意识到这一点,而不是在编译期间...... Doh!