2

当我尝试使用以下行编译代码时:(我正在使用boost 1.51, with gcc 4.6.3in UBuntu 12.04 LTS 64 bits

 #include <boost/date_time/posix_time/posix_time.hpp>

 dotFile << "// " << boost::posix_time::second_clock::local_time() << std::endl;

我收到此错误:

sources/sctg/src/main.cc: In function 'void printDot(sctg::Configuration*, std::string, std::vector<sctg::Task*>*, std::vector<sctg::Event*>*)':
sources/sctg/src/main.cc:1029:31: error: 'boost::posix_time' has not been declared

知道如何解决吗?

4

1 回答 1

1

以下最小测试用例对我有用:

$ cat posix_time.cpp

#include <boost/date_time/posix_time/posix_time.hpp>
#include <iostream>

int main()
{
    std::cout << boost::posix_time::second_clock::local_time() << std::endl;
    return 0;
}

$ g++ -Wall posix_time.cpp 
$ ./a.out 
2013-Jan-31 21:34:31
$

试试这个,看看它是否适用于您的系统。如果它失败了,那么我怀疑你的 boost 安装有问题(可能是一个空的标题)。

于 2013-01-31T21:36:27.263 回答