2012-10-10 40 views
6

Estoy intentando usar Eclipse en una colección existente de carpetas con C++ y archivos Makefile recursivos en Linux. Los archivos make usan gcc y ar, y el usuario especifica la ruta al gcc que quiere usar en el archivo Makefile. Los archivos make con los que trabajaré fueron mecanografiados a mano.Inferring include paths y make targets from Makefile existente en Eclipse

En Eclipse, hay una opción para crear un nuevo proyecto que se ve apropiado para lo que necesito: "Create a new Makefile project from existing code in that same directory".

* <none> 
* cross GCC 
* GNU Autotools Toolchain 
* Linux GCC 

Aquí tengo dos preguntas:

  • ¿Qué cadena de herramientas debería elegir? y ¿cómo usa Eclipse esta información?
  • me gustaría Eclipse para inferir tanto como se pueda de la Makefile de nivel superior (por ejemplo incluyen caminos, hacer objetivos, etc). ¿Cómo puedo hacer esto?
+0

¿Debería etiquetarse esto realmente [C++]? –

Respuesta

1

Realmente solo puede permitir que Eclipse cree el archivo MAKE en función de lo que tenga en su proyecto o decirle qué comando ejecutar cuando seleccione 'compilar'. Mezclar estas opciones que he encontrado realmente no funciona. Si está especificando el Makefile, entonces el compilador utilizado realmente no importa tampoco, ya que el Makefile lo definirá. Simplemente elija un 'proyecto vacío de C++' cuando cree un nuevo proyecto, asegúrese de especificar que no use la ubicación 'espacio de trabajo predeterminado' y apunte este cuadro de entrada a su base de código. En el proyecto C++/configuración de compilación, asegúrese de que "generar automáticamente el archivo MAKE" esté desmarcado y especifique qué comando se debe ejecutar para realizar su proyecto. (por lo general, esto es 'make all', pero podría ser diferente para usted)

3

Su pregunta es muy similar a la que he configurado para mi proyecto.

  1. Si la plataforma de destino en la que se espera que se ejecute la aplicación es la que está compilando, debe seleccionar Linux GCC.
  2. Si la plataforma de destino en la que se ejecutará la aplicación es, por ejemplo, un procesador ARM, debe especificar cross GCC.
  3. GNU Autotools Toolchain está diseñado para crear paquetes de código fuente en diferentes sistemas Linux.

Al seleccionar "Crear un nuevo proyecto Makefile a partir de un código existente en el mismo directorio", eclipse supondrá que los makefiles del usuario administrarán la compilación en sí. Para que eclipse incluya rutas de acceso, tenga las opciones de descubrimiento habilitadas en la configuración del proyecto. Es cierto que su marca de nivel superior necesita especificar la ruta de acceso, rutas de código fuente, etc.

Cuestiones relacionadas