2009-05-17 33 views
8

Soy un novato en las bibliotecas Boost C++. Me preguntaba si hay ventajas de Boost bjam sobre GNU. ¿Y cuáles son las desventajas si utilizo make para construir código C++ utilizando bibliotecas Boost.Python?Boost bjam versus GNU make

+3

De hecho, recomendaría CMake en ambos casos. – Zifre

+0

Entonces, GNU make es un programa dinosaurio, que es un dolor usar INHO. cmake tiene una sintaxis sencilla, buena documentación, incluso una interfaz gráfica de usuario y admite varios IDEs, como VS o Xcode. – Nils

Respuesta

6

Para aumentar la construcción, bjam es el camino a seguir, de lejos. Solo sigue el archivo Léame y construye la línea de comando. Puede (debería) solo tener que hacerlo una vez por lanzamiento de refuerzo.

Pero no hay necesidad de unir tu propio proyecto que usa boost para impulsar el sistema de compilación.

No existen contras particulares para usar gmake para compilar código en C++ que usa Boost.Python, y el profesional es que hay muchos ejemplos de uso de gmake.

2

Si va a utilizar otras bibliotecas de Boost, entonces usar bjam puede tener sentido, pero, desde un punto de vista simple, hacer es muy complicado trabajar con, para un proyecto complejo, por eso hormiga, por ejemplo, desarrollado.

Bjam amplía otros proyectos que comenzaron con el intento de reemplazar la marca.

Pero, en el lado negativo, make se encuentra en todos los sistemas operativos unix, bjam no lo es, pero, si tiene que usar las bibliotecas de Boost para su proyecto, entonces puede asegurarse de que esté incluido.

Para su proyecto, creo que bjam puede ser la mejor opción, pero si estuviese escribiendo un proyecto portátil que otros necesitarían compilar, utilizando ANSI C++, entonces sugeriría que también admitiera GNU Make.

0

He creado marcos de trabajo en equipo compartidos usando Make y BJam. Mi opinión final fue que la implementación de bjam era más fácil de mantener, una vez que aprendí la configuración básica. Los miembros del equipo pueden ser resistentes al principio, pero una vez que lo usan y ven que es mucho más simple que Make (mi opinión), se conquistan. Algunos continuarán resistiendo. Puede configurar sistemas de doble construcción, pero eso es un esfuerzo extra.

Cuando me veo forzado a usar Make, creo soluciones de archivos make no recursivos con conjuntos de reglas centrales. BJam tiene todo esto integrado.