c++ boost bjam boost-build boost-bjam

c++ - ¿Cómo puedo decodificar el nombre de la biblioteca de impulso?



boost bjam (3)

Traté de descubrir que gd significa en el nombre de la biblioteca de impulso y solo encontré a otras dos personas buscando lo mismo.

Supongo que debería ser un lugar donde esto esté claramente documentado y me gustaría encontrarlo.

  • mt - multitheaded, bjam threading=multi con bjam threading=multi
  • s - bjam runtime-link=static
  • g - utilizando versiones de depuración de las bibliotecas estándar y de soporte de tiempo de ejecución. ¿Qué interruptor bjam?
  • d - bjam variant=debug

Actualizar

¿Cómo controlo qué conmutadores bjam controlan las variantes anteriores? De hecho, el único que no pude identificar es el g .


Consulte la sección de inicio de Windows Boost 6.3 y la sección 6.1 sobre nombres de Unix.

Los que tratan con -mt y d son

-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)


De la documentación de Boost en http://www.boost.org/doc/libs/1_35_0/more/getting_started/windows.html#library-naming , la convención es:

-mt Etiqueta de subprocesamiento : indica que la biblioteca se creó con la compatibilidad de subprocesamiento múltiple habilitada. Las bibliotecas construidas sin soporte multihilo pueden identificarse por la ausencia de -mt.

-d Etiqueta ABI: codifica detalles que afectan la interoperabilidad de la biblioteca con otro código compilado. Para cada característica, se agrega una sola letra a la etiqueta:

Key Use this library when: s linking statically to the C++ standard library and compiler runtime support libraries. g using debug versions of the standard and runtime support libraries. y using a special debug build of Python. d building a debug version of your code. p using the STLPort standard library rather than the default one supplied with your compiler. n using STLPort''s deprecated “native iostreams” feature.

Por ejemplo, si crea una versión de depuración de su código para usar con versiones de depuración de la biblioteca de tiempo de ejecución estática y la biblioteca estándar STLPort en el modo "iostreams nativos", la etiqueta sería: -sgdpn. Si no se aplica ninguna de las opciones anteriores, la etiqueta ABI se omite.


El conjunto básico de características incorporadas, que es lo que usted especifica en la línea de comando (función = valor), se describe en la documentación de BBv2 (consulte las funciones incorporadas ). No sé si ya actualizamos la guía de introducción en la próxima versión 1.43, pero hay un cambio importante en la documentación para agregar esas descripciones de las opciones integradas a la guía de introducción para un acceso más rápido.