我安装了boost库,我想对其进行测试。我构建并运行以下项目。但是我有一个问题。当我构建项目时:
Info: Internal Builder is used for build
g++ -std=c++0x "-IC:\\boost\\include\\boost-1_68" -O0 -g3 -Wall -c -fmessage-length=0
-o "src\\MyTestProject.o" "..\\src\\MyTestProject.cpp"
g++ "-LC:\\boost\\lib\\" -o MyTestProject.exe "src\\MyTestProject.o" -lws2_32
-llibboost_iostreams-mgw63-mt-x32-1_68
-llibboost_filesystem-mgw63-mt-x32-1_68
-llibboost_system-mgw63-mt-x32-1_68
Build Finished. 0 errors, 0 warnings.
我单击运行项目后:“信息:没有为MyTestProject构建的内容”,并且它不会在MyTestProject.exe控制台上打印任何内容。
如果我注释掉
#include <iostream>
#include <boost/asio.hpp>
//#include <boost/date_time/posix_time/posix_time.hpp>
using namespace std;
int main()
{
//boost::asio::io_context io;
//boost::asio::deadline_timer t(io, boost::posix_time::seconds(5));
//t.wait();
cout << "Hello world!" << std::endl;
return 0;
}
答案 0 :(得分:1)
我找到了解决方案。我将libboost_system-mgw63-mt-d-x32-1_68.dll文件添加到我的项目目录(.. \ Users \ workspace \ MyTestProject)。实际上,我已经将-L c:\ boost \ lib和-l libboost_system-mgw63-mt-d-x32-1_68添加到链接器中。还可以将boost添加到PATH。我不知道为什么它找不到dll,但是现在我以这种方式解决了问题。
答案 1 :(得分:0)
当您打印到控制台并立即返回时,控制台可能会消失而您没有机会阅读任何内容。之后,尝试从cin
中读取确认。
另外,您应该始终说if (cout)
,否则您不知道流是否失败。