以下命令使用VCPKG构建增强功能。
vcpkg install boost:x64-windows boost:x64-windows
此命令可构建 Boost的所有版本。具体来说,它构建以下程序包:boost-accumulators,boost-algorithm,boost-align,boost-any,boost-array,boost-asio,boost-assert,boost-assign,boost-atomic,boost-beast,boost-bimap ,boost-bind,boost-callable-traits,boost-chrono,boost-circular-buffer,boost-compatibility,boost-compute,boost-concept-check,boost-config,boost-container,boost-container-hash,boost -context(!uwp),boost-contract(!arm),boost-conversion,boost-convert,boost-core,boost-coroutine(!uwp),boost-coroutine2,boost-crc,boost-date-time,boost -详细信息,boost-disjoint-sets,boost-dll,boost-dynamic-bitset,boost-endian,boost-exception,boost-fiber(windows),boost-filesystem(!uwp),boost-flyweight,boost-foreach,增强格式,增强功能,增强功能,增强功能类型,增强融合,增强几何,增强吉尔,增强图,并行图增强,增强hana,增强堆,增强-直方图,boost-hof,boost-icl,boost-整数,boost-interprocess,boost-intrusive,boost-io,boost-i ostreams(!uwp),boost-iterator,boost-lambda,boost-lexical-cast,boost-locale(!uwp),boost-local-function,boost-freefree,boost-log(!uwp),boost-logic, boost-math,boost-metaparse,boost-move,boost-mp11,boost-mpl,boost-msm,boost-multiprecision,boost-multi-array,boost-multi-index,boost-numeric-conversion,boost-interval, boost-odeint,boost-ublas,boost-安全数字,boost-可选,boost-compe,boost-parameter,boost-parameter-python(windows),boost-phoenix,boost-polygon,boost-poly-collection,boost -pool,boost-predef,boost-preprocessor,boost-process,boost-program-options,boost-property-map,boost-property-tree,boost-proto,boost-ptr-container,boost-python(windows), boost-qvm,boost-random,boost-range,boost-ratio,boost-rational,boost-regex,boost-数字转换,boost-interval,boost-odeint,boost-ublas,boost-安全数字,boost-作用域退出,增强串行化,增强信号2,增强智能ptr,增强排序,增强精神,增强堆栈跟踪(!uwp),增强tatechart,boost-static-assert,boost-system,boost-test(!uwp),boost-thread,boost-throw-exception,boost-timer,boost-tokenizer,boost-tti,boost-tuple,boost-typeof, boost-type-ersure(!arm),boost-type-index,boost-type-traits,boost-units,boost-unordered,boost-utility,boost-uuid,boost-variant,boost-variant2,boost-vmd, boost-wave(!uwp),boost-winapi,boost-xpressive和boost-yap。
问题在于此命令无法在ICU支持下构建Boost。
“ vcpkg搜索”命令包含以下相关条目。
boost 1.71.0 Peer-reviewed portable C++ source libraries
boost-locale 1.71.0 Boost locale module
boost-locale[icu] ICU backend for Boost.Locale
boost-regex 1.71.0 Boost regex module
boost-regex[icu] ICU backend for Boost.Regex
以下内容不起作用,因为它会产生错误。
vcpkg install boost[icu]:x64-windows boost[icu]:x64-windows
以下版本具有ICU支持,但不能构建 Boost的所有版本。
vcpkg install boost-locale[icu]:x64-windows boost-locale[icu]:x64-windows boost-regex[icu]:x64-windows boost-regex[icu]:x64-windows
构建boost-locale会构建以下组件:boost-locale,boost-assert,boost-build,boost-config,boost-function,boost-integer,boost-iterator,boost-modular-build-helper,boost- smart-ptr,boost-static-assert,boost-system,boost-thread,boost-type-traits,boost-unorder和boost-vcpkg-helpers。
构建boost-regex构建以下组件:boost-regex,boost-assert,boost-build,boost兼容性,boost-concept-check,boost-config,boost-container-hash,boost-core,boost-详细信息,boost-integer,boost-iterator,boost-module-build-helper,boost-mpl,boost-predef,boost-smart-ptr,boost-static-assert,boost-throw-exception,boost-type-traits, boost-utility和boost-vcpkg-helpers。
boost-locale和boost-regex都忽略了boost-accumulators等组件。
先安装boost,然后再安装boost-locale和boost-regex会导致您想要重新生成消息。
应该只有一个命令来构建具有ICU支持的 Boost全部,而无需重新生成废话。
答案 0 :(得分:2)
事实证明,将ICU用于支持ICU功能的那些组件时,可以构建所有Boost,如下所示。
./ vcpkg install boost-locale [icu] boost-regex [icu] boost --triplet x64-windows --recurse
来源:How do I build boost with ICU support without having to build most components of boost twice?