Debo compilar un programa escrito en C a través de un Makefile. Debería insertar en el Makefile, alguna opción, por ejemplo: -O2, -march=i686
. ¿Cómo puedo insertar esta opción en Makefile sin escribir en ella?Agregar la opción del compilador sin editar Makefile
Respuesta
Debe usar una macro como CFLAGS. Consulte GNU GCC documentation.
Algo como esto debería funcionar:
CFLAGS := $(CFLAGS) -O2 -march=i686
O, si lo prefiere no modificar el uso makefile:
make CFLAGS='-O2 -march=i686'
serán recogidos automáticamente aunque las otras opciones. Ver overriding variables.
Tenga en cuenta que CFLAGS se puede crear a partir de macros complejas. Tal vez sea mejor que anule una de las sub-macros. Si no hay una opción contradictoria en CFLAGS, a menudo uso '' make CC = "gcc -O2 -march = i686" ''para lograr el resultado deseado. –
Donde trabajo, usamos las macros dedicadas definidas por el usuario para tal cosa - ADDED_CFLAGS, ADDED_ASMFLAGS, ADDED_EXEFLAGS, .... – Sparky
A veces hay variables en el archivo make que le permiten agregar indicadores adicionales sin anular nada: p.ej 'XCFLAGS',' XLIBS'. Solo mira el archivo MAKE. –
- 1. reglas del patrón makefile sin recetas
- 2. Resolviendo conflictos con egit. Sin la opción "Equipo -> Agregar"
- 3. compilador C#:/nostdlib opción
- 4. Agregar comentarios a Makefile
- 5. argparse module ¿Cómo agregar la opción sin ningún argumento?
- 6. @ Html.DropDownListFor ¿Cómo agregar la opción?
- 7. Recompile con la opción -fPIC, pero la opción ya está en el makefile
- 8. Error del compilador al agregar datos principales a la aplicación
- 9. ¿Cómo agregar/editar la funcionalidad en la misma página sin parpadeo?
- 10. C#: Ventaja de indicar explícitamente la opción "insegura"/compilador
- 11. Makefile - ../ quitar del camino
- 12. Editar texto sin autocorrección
- 13. ¿Por qué falta la opción Editar configuración de WCF?
- 14. Muestra dinámicamente la opción del menú Editar bloque de control en SharePoint
- 15. Agregar la opción deshabilitada en codeigniter form_dropdown
- 16. Agregar imágenes con la etiqueta de opción
- 17. ¿La regla del patrón Makefile falla?
- 18. ¿Por qué necesita una opción explícita compilador `-lm`
- 19. Mapeo de NHibernate sin agregar la opción ON DELETE CASCADE a la referencia de clave externa
- 20. "Editar" texto del usuario sobre la marcha?
- 21. ¿Cómo redirigir la salida del compilador gcc a un archivo?
- 22. optimización del compilador para la estabilidad numérica
- 23. regla Makefile y sin dependencia de la expresión
- 24. Agregar mi propia advertencia de compilador
- 25. ¿Cómo podría agregar dir a $ PATH en Makefile?
- 26. JQGrid/Fecha seleccionada en la ventana Agregar/Editar
- 27. Opción GNU make --jobs en QMAKE
- 28. Qué es la opción en la opción del CCG "-Wl, OPCIÓN"
- 29. Personalizar el cuadro de diálogo Agregar/Editar en jqGrid
- 30. makefile: cómo agregar un prefijo al nombre base?
¿Ya podemos ver lo que tienes en tu archivo Makefile? – Starkey
Debe ser un Makefile genérico – Gnufabio
http://stackoverflow.com/questions/1250608/passing-a-gcc-flag-through-makefile –