如何解码 boost 库命名?

2021-12-24 00:00:00 c++ boost bjam boost-build

我试图找出 gd 在 boost 库名称中的意思,但我只发现另外两个人正在寻找相同的东西.

I tried to find out that gd means in boost library name and I only found two other people looking for the same thing.

我想它应该是一个明确记录的地方,我想找到它.

I suppose it should be a place where this is clearly documented and I would like to find it.

  • mt - 多头,使用 bjam threading=multi
  • s - bjam runtime-link=static
  • g - 使用标准和运行时支持库的调试版本.什么 bjam 开关???
  • d - 调试 bjam variant=debug
  • mt - multitheaded, get it with bjam threading=multi
  • s - bjam runtime-link=static
  • g - using debug versions of the standard and runtime support libraries. what bjam switch???
  • d - debug bjam variant=debug

我如何控制哪些 bjam 开关控制上述变体?事实上,我唯一无法识别的就是 g.

How do I control what bjam switches controls the above variants? In fact the only one that I wasn't able to identify is the g.

推荐答案

参见 Boost 入门窗口 6.3 节命名和第 6.1 节 Unix 命名

See Boost getting started windows section 6.3 naming and section 6.1 on Unix naming

处理 -mt 和 d 的是

The ones that deal with -mt and d are

-mt Threading tag: indicates that the library was built with multithreading support enabled. Libraries built without multithreading support can be identified by the absence of `-mt`.  

-d ABI tag: encodes details that affect the library's interoperability with other compiled code. For each such feature, a single letter is added to the tag as listed in this table:
  Key   Use this library when (Boost.Build option)
  s     linking statically to the C++ standard library 
        and compiler runtime support libraries.
        (runtime-link=static)
  g     using debug versions of the standard and runtime support libraries. 
        (runtime-debugging=on)
  y     using a special debug build of Python.
        (python-debugging=on)
  d     building a debug version of your code.
        (variant=debug)
  p     using the STLPort standard library rather than
        the default one supplied with your compiler.
        (stdlib=stlport)

相关文章