在Solaris上构建Boost

时间:2011-11-23 12:59:12

标签: c++ boost solaris sunstudio cpp-netlib

Boost将在Solaris上全面构建吗?

我想知道是否有人在此之前取得了成功(特别是Proto / Spirit),然后才支付最终修补Sun Studio 12.2的支持合同。我得到了一些错误,有些看起来已经在补丁中得到解决,但是向Oracle支付费用并不便宜,所以我宁愿希望它能在我做之前发挥作用。

现在,我只是尝试在Solaris上使用cpp-netlib并使用Boost属性树解码通过HTTP获取的一些JSON。它在Mac OS X上运行良好 - 所以我希望我可以在Solaris上使用相同的代码。

2 个答案:

答案 0 :(得分:2)

如果查看http://www.boost.org/users/history/version_1_48_0.html,您会看到两个编译器列表。 “主要”编译器是针对该版本进行测试的编译器。那里没有基于Solaris的编译器。

第二个列表是针对中继进行测试的内容(或多或少每天)。 Sun编译器v 5.10就在该列表中。

现在,您可以查看http://www.boost.org/development/tests/trunk/developer/summary.html,并找到该编译器的测试结果。从那里,您可以找到Sun编译器的列,并检查哪些测试失败(及其原因)。

然而,看起来几乎所有的精神测试都在编译器上失败了,所以我不会抱太大希望。

......后来...... 但是,由于您使用的是不同的编译器,因此您可能需要查看http://www.boost.org/development/running_regression_tests.html,它将向您展示如何使用您的安装运行回归测试。然后你可以看到boost如何与你的编译器一起工作。

答案 1 :(得分:2)

我使用Apache stdcxx 4.2.1 C ++库在Solaris上编译了boost 1.54.0。有一些差异和一个CLI配方,但它是99%构建:)如果我找到一个合适的位置来上传差异我会更新。

Intel Solaris 10& 11

[...]
common.copy /usr/local/lib/libboost_timer.a
common.copy /usr/local/lib/libboost_wave.a
...failed updating 53 targets...
...skipped 37 targets...
...updated 10652 targets...

SPARC 10

[...]
common.copy /usr/local/lib/libboost_timer.a
common.copy /usr/local/lib/libboost_wave.a
...failed updating 49 targets...
...skipped 42 targets...
...updated 10649 targets...

这些包可以在我的包存档上找到:

http://www.ibiblio.org/pub/packages/solaris/sparc/

boost.1.54.0.SPARC.64bit.Solaris.10.pkg
boost.1.54.0.i86pc.Solaris.10.pkg
boost.1.54.0.i86pc.Solaris.11.pkg