0

我有一个非常简单的 Boost 单元测试,如下所示:

#define BOOST_TEST_DYN_LINK
#define BOOST_TEST_MODULE myModule
#include <boost/test/unit_test.hpp>

BOOST_AUTO_TEST_CASE(universeInOrder)
{
    BOOST_CHECK(true);
}

这编译得很好,没有任何问题。但是,当我运行应用程序时,控制台视图没有输出,并且控制台视图显示应用程序已终止。我尝试通过 将日志级别设置为程序参数--log_level=all,但没有效果。但是,当我从命令行运行我的可执行文件时,我看到了预期的输出。我也无法调试程序,这是一个非常关键的问题。我正在使用 Eclipse 3.7、MinGW 4.6 和 Boost 1.52。有什么想法吗?

编辑 这是我的编译器参数:

g++ -IC:\Boost\boost_1_52_0 -O0 -g3 -Wall -c -fmessage-length=0 -o src\Test1.o ..\src\Test1.cpp

g++ -LC:\Boost\boost_1_52_0\stage\lib -o MinGWUnitTestProject.exe src\Test1.o -llibboost_unit_test_framework-mgw46-d-1_52

4

1 回答 1

1

问题是在Eclipse中执行测试时,Boost单元测试库不在执行路径上。我通过修改“运行配置”以将 Boost 单元测试库的目录添加到“路径”环境变量来解决此问题。它现在运行并给我输出以及允许我调试。

于 2013-03-21T15:06:02.030 回答