英特尔icpc编译器错误与ubuntu上的提升

时间:2013-04-19 16:55:55

标签: boost compiler-errors icc

我试图让Boost在Ubuntu上使用英特尔的编译器icpc。我的管理员安装了this webpage的软件包。我现在正在尝试运行basic example from the Boost's webpage,编译如下:

icpc -I /usr/include/boost example.cpp -L/usr/lib/ -lboost_regex,

我得到了这种形式的一堆编译器错误:

/usr/include/boost/smart_ptr/detail/shared_count.hpp(233): error: copy constructor for class "boost::detail::shared_count" may not have a parameter of type "boost::detail::shared_count"
  shared_count(shared_count && r): pi_(r.pi_) // nothrow
/usr/include/boost/smart_ptr/detail/shared_count.hpp(233): error: expected a ")"
  shared_count(shared_count && r): pi_(r.pi_) // nothrow
/usr/include/boost/smart_ptr/detail/shared_count.hpp(233): error: identifier "r" is undefined
  shared_count(shared_count && r): pi_(r.pi_) // nothrow
/usr/include/boost/smart_ptr/detail/shared_count.hpp(340): error: copy constructor for class "boost::detail::weak_count" may not have a parameter of type "boost::detail::weak_count"
  weak_count(weak_count && r): pi_(r.pi_) // nothrow

等。令人惊讶的是(或者没有),这个东西可以用g ++工作,只需写下来:

g++ example.cpp -o example.out -lboost_regex

如果你能帮助我,我真的很感激。干杯!

1 个答案:

答案 0 :(得分:1)

您发布的链接指向boost 1.40,而您遇到的问题似乎是to be fixed since 1.47。 (请注意current boost version is 1.53。)