当我交叉引用installing Boost from sources时,我正在阅读enter link description here,其中说:
但是,使用Boost.Build,可以将仅标头库声明为
Boost.Build目标,所有依赖项都可以使用此类库而无需
必须记住它是否是仅标头的库。
然后有一个描述为:
alias my-lib
: # no sources
: # no build requirements
: # no default build
: <include>whatever ;
它是如何连接的以及它试图用上述别名规则解释什么?
最佳答案
FAQ条目与在系统上安装Boost库无关。
FAQ条目适用于使用Boost.Build作为其构建系统(而不是make,CMake等)的人。他们观察到某些库仅是头文件,整个库仅存在于头文件中,不需要链接.a
或.so
。在某些构建系统中,很难将此类库指定为依赖项,因为构建系统实际上并未构建它们,不链接它们,甚至可能不知道它们的存在(如果安装在include路径中)。 Boost.Build使用该alias
命令指定此类库。
仅标头库的一个示例是Boost本身,其中大多数模块仅位于标头文件中。