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
Respuesta
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.
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.
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.
- 1. _Expand versus new versus GNU
- 2. GNU de make
- 3. GNU make cheat-sheet
- 4. Depuración GNU make
- 5. BSD Make y GNU Make makefile compatible
- 6. Completo tutorial gnu make/gcc
- 7. ejecutando grep desde GNU make
- 8. boost lambda versus phoenix
- 9. tratando de construir Boost: No puedo conseguir bjam
- 10. vectores Boost versus vectores STL
- 11. Opción GNU make --jobs en QMAKE
- 12. evitar la duplicación de GNU Make reglas
- 13. GNU make: objetivo limpio depende de incluye
- 14. ¿Por qué GNU make eliminar un archivo
- 15. ¿Vale la pena aprender GNU Make?
- 16. Speedup GNU make build process - Paralelismo?
- 17. GNU Make convertir espacios a dos puntos
- 18. GNU make: ¿invertir el éxito del subproceso?
- 19. Boost.Build/bjam y Qt
- 20. Creando varios archivos de encabezado precompilados utilizando GNU make
- 21. GNU make: La extracción de argumento para -j dentro Makefile
- 22. ¿Cómo invoco una macro make de GNU creada usando define?
- 23. Especificando la ruta en makefile (GNU make en Windows)
- 24. ¿Por qué la receta enlatada GNU Make no funciona?
- 25. ¿Cuáles son algunos buenos recursos para GNU Make?
- 26. GNU make: objetivos múltiples en una sola regla
- 27. Cómo analizar el rendimiento de GNU Make files
- 28. Variables automáticas en las pruebas de condicionales: GNU Make
- 29. En GNU Make, ¿cómo convierto una variable a minúsculas?
- 30. Unix find with GNU Make para actualizar automáticamente los archivos
De hecho, recomendaría CMake en ambos casos. – Zifre
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