版本 1.68.0
版本 1.68.0
2018年8月9日 格林尼治标准时间03:46
平台 | 文件 | SHA256 哈希值 |
---|---|---|
Unix | boost_1_68_0.tar.bz2 | 7f6130bc3cf65f56a618888ce9d5ea704fa10b462be126ad053e80e553d6d8b7 |
boost_1_68_0.tar.gz | da3411ea45622579d419bfda66f45cd0f8c32a181d84adfa936f5688388995cf | |
Windows | boost_1_68_0.7z | 59804d8fad02cf3b09485f3dbc0f9097c05fc1e0123f0c133b35a6c6f601109a |
boost_1_68_0.zip | 3b1db0b67079266c40b98329d85916e910bbadfc3db3e860c049056788d4d5cd |
Windows 用户须知
Boost.WinAPI 已更新,默认情况下尽可能以 Windows 7 为目标。在之前的版本中,Windows Vista 是默认目标。
Boost.WinAPI 在许多 Boost 库中被用作 Windows SDK 抽象层,包括 Boost.Beast、Boost.Chrono、Boost.DateTime、Boost.Dll、Boost.Log、Boost.Process、Boost.Stacktrace、Boost.System、Boost.Thread 和 Boost.UUID。要选择目标 Windows 版本,请在编译 Boost 和用户代码时将 BOOST_USE_WINAPI_VERSION
定义为类似于 _WIN32_WINNT
的数字版本。例如
b2 release define=BOOST_USE_WINAPI_VERSION=0x0501 stage
Windows API 版本号列表可以在此页面上查看。
新增库
-
YAP: Zach Laine 编写的用于 C++14 及更高版本的表达式模板库。
更新的库
-
Fiber:
-
#170: buffered_channel::try_push 的文档不正确
-
#172: WIN64: 使用 mingw-w64 构建时出现“从 'HANDLE' 到 'std::thread::native_handle_type' 的无效转换”错误
-
#175: 抛出异常“不允许的操作”
-
NUMA 支持移至额外库 (fiber-numa);通过属性 numa 启用 (numa=on)
-
-
GIL:
-
新增
-
该库现在需要符合 C++11 标准的编译器。
-
新的顶级一体化
include/boost/gil.hpp
头文件(PR#70)。 -
新的工具箱扩展,已审查并被 Boost 接受。
-
-
更改
-
IO 扩展已被完全重写为 IO v2,已审查并被 Boost 接受。
-
文档已重新格式化和更新。
-
-
移除
-
IO v1 扩展已被 IO v2 取代。
-
-
-
Lexical Cast:
-
针对 clang-tidy 警告的修复 #12092
-
-
Math:
-
支持任意精度复值求积,因此支持轮廓积分
-
提高多项式加法的性能
-
继续改进数值积分例程,特别是添加对轮廓积分的支持。
-
提高 erfc 函数的有理逼近的精度。
-
-
Multi-index Containers:
-
现在可以序列化可移动但不可复制元素的容器(问题单 #13478)。感谢 Sébastien Paris 的报告。
-
-
Multiprecision:
-
添加了对复数多精度数的支持。
-
将转换为无符号整数类型的行为更改为截断,以匹配标准定义的行为。
-
更正 MPFR 字符串格式化中的错误。
-
修复 cpp_dec_float 从 long long 转换中的未定义行为。
-
添加对 Eigen 互操作性的支持。
-
float128.hpp:修复 Windows 上的 Intel 构建。
-
修复扩展包含混合表达式的表达式模板时在临时变量中使用的类型。
-
修复 gmp_float 到定点字符串转换中的无限循环。
-
更新表达式模板,以便在您尝试执行不受支持的操作时发出带有更好错误消息的 static_asserts。
-
修复 cpp_int 中的错误,其中递增到零不会正确设置符号。
-
删除 std::move 的错误使用,并依赖 NVRO。
-
修复对 MPIR-3.0 更改的支持。
-
修复 cpp_bin_float 中的各种转换错误,当指数类型是
long long
时,或者我们要转换为比我们更宽的整数时。 -
修复由
std::byte
的引入导致的与 GCC-8 的兼容性问题。
-
-
预定义:
-
添加对 __ARM_ARCH 宏的支持。(来自 Tim Blechmann)
-
添加对 PTX 架构的检测。(来自 Benjamin Worpitz)
-
添加 nvcc 编译器检测。(来自 Benjamin Worpitz)
-
添加对 CUDA 的检测支持。(来自 Benjamin Worpitz)
-
删除对已过时的 BOOST_ARCH_AMD64 的引用。(来自 Peter Kolbus)
-
-
Signals:
-
**移除通知:** Boost.Signals 将在下一个版本中移除。Boost.Signals 在 1.54.0 版本中已弃用。现在过渡到 Boost.Signals2 以避免中断。
-
-
Stacktrace:
-
修复了在 Solaris 和其他在
dladdr
函数中将地址限定为 const 的平台上的编译问题(github 54)。 -
放弃了对 Boost.LexicalCast 的依赖。
-
-
TypeIndex:
-
放弃了对 Boost.MPL 的依赖。
-
测试过的编译器
Boost 的主要测试编译器是
-
Linux
-
Clang: 3.0, 4.0.1, 6.0.1
-
Clang, C++0x: 3.0
-
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1
-
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2, 6.0.1
-
Clang, C++17: 5.0.2, 6.0.1
-
GCC: 4.4.7, 4.5.3, 4.6.3, 5.4.0, 8.0.1
-
GCC, C++0x: 4.4.7
-
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
-
GCC, C++14: 5.4.0, 5.5.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1
-
GCC, C++17: 7.3.0, 8.0.1
-
Intel, C++14: 18.0
-
-
OS X
-
Apple Clang: 9.0.0, 9.1.0
-
Apple Clang, C++11: 9.0.0, 9.1.0
-
Apple Clang, C++14: 9.0.0, 9.1.0
-
Apple Clang, C++17: 9.1.0
-
Apple Clang, C++1z: 9.0.0
-
-
Windows
-
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
-
GCC, C++0x: 4.6.4
-
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
-
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
-
GCC, C++17: 7.1.0, 7.2.0, 7.3.0
-
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
-
-
FreeBSD
-
Clang: 4.0.0
-
Clang, C++11: 4.0.0
-
Clang, C++14: 4.0.0
-
Clang, C++1z: 4.0.0
-
Boost 的其他测试编译器包括
-
Linux
-
Clang: 3.0, 3.8.1, 3.9.1, 4.0.1, 5.0.2, 6.0.1
-
Clang, C++0x: 3.0
-
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1
-
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2, 6.0.1, 7.0.0
-
Clang, C++17: 5.0.2, 6.0.1
-
GCC: 4.4.7, 4.5.3, 4.6.3, 4.9.4, 5.4.0, 5.5.0, 8.0.1
-
GCC, C++0x: 4.4.7
-
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
-
GCC, C++14: 5.4.0, 5.5.0, 6.3.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1, 8.1.0
-
GCC, C++17: 7.3.0, 8.0.1
-
Intel, C++14: 18.0
-
-
OS X
-
Apple Clang: 9.0.0, 9.1.0
-
Apple Clang, C++11: 9.0.0, 9.1.0
-
Apple Clang, C++14: 9.0.0, 9.1.0
-
Apple Clang, C++17: 9.1.0
-
Apple Clang, C++1z: 9.0.0
-
-
Windows
-
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
-
GCC, C++0x: 4.6.4
-
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
-
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
-
GCC, C++17: 7.1.0, 7.2.0, 7.3.0
-
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
-
-
FreeBSD
-
Clang: 4.0.0
-
Clang, C++11: 4.0.0
-
Clang, C++14: 4.0.0
-
Clang, C++1z: 4.0.0
-
致谢
Daniel James、Vladimir Prus 和 Marshall Clow 管理了此版本。