Boost单元测试不使用MinGW在Eclipse中生成输出

时间:2013-03-15 01:55:38

标签: c++ eclipse boost mingw boost-unit-test-framework

我有一个非常简单的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。有什么想法吗?

修改 这是我的编译器args:

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

1 个答案:

答案 0 :(得分:1)

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