Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Inconsistency between b2 and CMake builds regarding library type (Static vs. Header-only)

Abierto
#65 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
cmake, cpp
Área
build-system

Línea de trabajo

Comience con build/Jamfile.v2 y CMakeLists.txt, especialmente con las líneas de configuración de la biblioteca enlazada, y compare cómo representa cada sistema de compilación Boost.Exception. Determine el tipo de biblioteca previsto y el comportamiento del enlazado; el issue se resuelve cuando se decide cuál es el comportamiento esperado del proyecto y las dos configuraciones se hacen coherentes o la diferencia se documenta claramente.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Greetings! 👋

There appears to be an inconsistency in how the Boost.Exception library is built and packaged depending on the build system used (b2 vs. CMake). I know b2 is the official one and CMake is optional, but this difference and as b2 only provide static library makes me think about this case.

With b2: The library forces a static build. Even when passing the global link=shared property to b2 to generate shared libraries across Boost, Boost.Exception overrides this behavior in its build configuration, hardcoding it to build strictly as a static library.

With CMake: The CMakeLists.txt configures Boost.Exception entirely as a header-only (INTERFACE) library, offering no option to build a compiled/pre-built library component.

  • Is the static restriction in Jamfile.v2 intended design, or is it a legacy artifact/bug?

  • Is Boost.Exception officially supposed to be treated strictly as a header-only library going forward (as suggested by the CMake configuration)?

Regards!

Lenguaje dominante
C++
Estrellas
17
Forks
50
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de boostorg/exception

Todos los issues de boostorg/exception

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.