¿Qué bibliotecas de Boost son solo de encabezado?

¿Qué bibliotecas de Boost son solo de encabezado? ¿Y cuáles requieren construir bibliotecas?

¿Existe tal lista?

La lista de bibliotecas que requieren creación está aquí para sistemas tipo Unix, y aquí para Windows.

Para la versión actual, 1.58, ambos son iguales:

  • Boost.Chrono
  • Boost.Context
  • Boost.Filesystem
  • Boost.GraphParallel
  • Boost.IOStreams
  • Boost.Locale
  • Boost.MPI
  • Boost.ProgramOptions
  • Boost.Python
  • Boost.Regex
  • Boost.Serialization
  • Boost.Signals
  • Boost.System
  • Boost.Thread
  • Boost.Timer
  • Boost.Wave

Algunas bibliotecas tienen binarios opcionales comstackdos por separado:

  • Boost.DateTime
  • Boost.Graph
  • Boost.Math
  • Boost.Random
  • Boost.Test
  • Boost.Exception

Tenga en cuenta que algunas bibliotecas pueden depender de esto (por ejemplo, Asio depende del sistema como se señala en los comentarios), por lo que puede que necesite construir algo incluso si la biblioteca que desea no está en la lista.

Creo que esta lista no es precisa, aunque proviene de la documentación oficial:

https://svn.boost.org/trac10/ticket/13222

Puede consultar la lista de bibliotecas que deben comstackrse:

> ./bootstrap.sh --show-libraries The Boost libraries requiring separate building and installation are: atomic chrono container context coroutine date_time exception fiber filesystem graph graph_parallel iostreams locale log math metaparse mpi program_options python random regex serialization signals stacktrace system test thread timer type_erasure wave 

Nota : En Windows, debe llamar a bootstrap.bat para comstackr “b2” y luego llamar a b2 --show-libraries .

De hecho, incluso ./bootstrap.sh --show-libraries es algo incorrecto, porque algunas bibliotecas dependen de las bibliotecas listadas.

Es posible obtener una lista de bibliotecas de solo encabezado con la herramienta Boost BCP , iniciando la herramienta en cada biblioteca y eliminando aquellas que enlazan cualquier binario. Eso es lo que se hizo en Cómo generar encabezado solo Boost .

Para Boost 1.67.0 la lista resultante fue:

 accumulators align any array assert assign bind callable_traits circular_buffer compatibility concept_check config container_hash conversion convert core crc detail disjoint_sets dynamic_bitset endian foreach format function functional function_types fusion geometry gil hana heap hof icl integer interprocess intrusive io iterator lambda lexical_cast locale local_function logic metaparse move mp11 mpl msm multi_array multi_index optional phoenix poly_collection polygon predef preprocessor property_tree proto ptr_container qvm ratio rational scope_exit signals2 smart_ptr sort static_assert throw_exception tokenizer tti tuple type_index typeof type_traits units unordered utility uuid variant vmd winapi xpressive