2012-10-11 41 views
6

Después de leer:la extracción automática de caminos -I gcc para la indexación de código fuente en Emacs

me entero de que al crear una carpeta de proyecto existente con un archivo y hacer que la fuente código, puedo tener semantic indexar los archivos por:

  1. definir un proyecto EDE sencillo con:

    (ede-cpp-root-project ... :system-include-path '("~/exp/include/boost_1_37")

  2. o especificando los caminos incluir a semánticas directamente con

    (semantic-add-system-include "~/exp/include/boost_1_37" 'c++-mode)

Pero esto todavía me exige que escriba las rutas manualmente. ¿Hay alguna forma de extraer automáticamente las rutas include para la semántica de un existente crear archivo?

Antecedentes: Algunos entornos de desarrollo tienen una función de detección automática gcc -I caminos desde un archivo existente hacer. Por ejemplo, en Eclipse, puede crear un proyecto en una ruta con un archivo make y un código fuente existentes, y Eclipse inferiría las rutas de inclusión para su "intellisense" al construir el proyecto (supongo que Eclipse analiza el resultado de la creación de GNU a hacer esto). Me gustaría hacer lo mismo en Emacs.

Respuesta

1

La respuesta es "sí": hay una manera de descubrir esta ruta de acceso incluida. AFAIK aún no se ha escrito el código para él (aunque puedo estar equivocado en este). Todo lo que necesita hacer es ejecutar make -n y buscar el "-I" en la salida. Por supuesto, el diablo está en los detalles, pero debería ser posible escribir una prueba de concepto con bastante facilidad.

Cuestiones relacionadas