2012-09-24 15 views
28

Mi Eclipse CDT sigue quejándose "make: *** hay una regla para hacer diana todos" cuando estoy tratando de compilar el fragmento de código a continuación:Eclipse CDT: hay una regla para hacer diana toda

#include <iostream> 
using namespace std; 

int main() { 
    cout << "Hello World!!!" << endl; // prints Hello World!!! 
    return 0; 
} 

Cualquiera sabe cómo resolver esto? He leído el post con el título similares: make: *** No rule to make target `all'. Stop. Eclipse error Pero ninguna de esas respuestas ayudar ...

Muchas gracias!

+0

acabo de descargar el paquete CDT de su sitio web y no hacer nada con él. En realidad, este problema existe incluso antes de editar mi test.cpp –

+0

¿Qué cadena de herramientas elegiste para el proyecto? – Torsten

Respuesta

31

Necesita cambiar la configuración de su proyecto para que Eclipse-CDT administre sus Makefiles por usted.

  1. Seleccione Proyecto-> Propiedades en la barra de menú.
  2. Haga clic en Crear C/C++ a la izquierda en el cuadro de diálogo que aparece.
  3. En la pestaña Configuraciones del constructor a la derecha, seleccione "Generar Makefiles automáticamente" en la sección de generación de Makefile.
  4. Pulse Aceptar y compilar de nuevo.
+26

"Generar Makefiles automáticamente" está sombreado para mí! –

+0

La solución dada por user1146300 funcionó para mí. Esto puede ayudar a algunas almas perdidas .. !! LOL – deepdive

+1

Si construiste tu proyecto usando un "Proyecto existente con makefile incluido" mi problema se resolvió antes hoy al desmarcar "Generar archivos make automáticamente". Ahora en mi portátil de trabajo desde mi casa, obtengo exactamente el mismo error, pero ahora no funciona de ninguna manera. – JoeManiaci

6

En C/C++ compilación -> Configuración del constructor, seleccione Constructor interno (en lugar de Constructor externo).

Funciona para mí.

8
  1. Seleccione Proyecto-> Propiedades en la barra de menú.

  2. Haga clic en C/C++ Crear a la izquierda en el cuadro de diálogo que aparece.

  3. En la pestaña Configuraciones del constructor a la derecha, verifique y asegúrese de que la "Ubicación de compilación" sea correcta.
+0

¡Esto lo hizo por mí, gracias! – ossys

5

Acabo de resolver este problema por mí mismo; incluso hizo referencia a esta pregunta.

Supongo que no ha escrito la regla "todos" de la que Eclipse se queja. Si este es el caso, siga estos pasos:

  1. Vaya a Propiedades del proyecto> Compilación C/C++> Pestaña Comportamiento.
  2. Dejar compilación (compilación incremental) comprobado.
  3. Eliminar "todos" del cuadro de texto al lado de compilar (compilación incremental).
  4. Compilar lejos!

Esto le permite a Eclipse saber que no está tratando de usar un objetivo de fabricación llamado "todo". Por alguna razón, ese es el valor predeterminado.

2

A veces, si está haciendo un objetivo a través de archivos make, compruebe que todos los archivos c están nombrados correctamente con la estructura de archivos correcta.

1

Proyecto -> Limpiar -> Limpiar todos los proyectos y luego Proyecto -> Construir proyecto funcionó para mí (hice la anulación de generar make-file automáticamente y luego volver a comprobarlo antes de hacer esto). Esto fue para un proyecto de AVR (programación de microprocesador) a través del plugin AVR CDT en el eclipse de Juno.

10

"all" es una configuración predeterminada, aunque la pestaña Behaviour-> Build (Incremental build) no tiene ninguna variable. Lo resolví como

  1. Vaya a Propiedades del proyecto> Compilación C/C++> Pestaña Comportamiento.
  2. Dejar compilación (compilación incremental) comprobado.
  3. Ingrese "test" en el cuadro de texto junto a Build (compilación incremental).
  4. Proyecto de compilación. Verás un mensaje de error.
  5. Regrese a Crear (compilación incremental) y elimine "prueba".
  6. Proyecto de compilación.
+2

¡¡¡Lol !! ¡Esto es tan no intuitivo y aun así FUNCIONA! : 0 – deepdive

0

Si las soluciones anteriores no funcionan para usted así -

podría ser que usted no ha instalado C++ paquetes compilador correctamente, el flujo a esto: (Instrucciones para Win7, 32 bits/64 bits)

  1. Asegúrese de instalar correctamente uno o más del C++ paquetes de soporte del compilador:

    (He instalado MinGW (manual de instalación vídeos se puede encontrar en YouTube))

    En caso de que elija para instalar paquetes MinGW:

    • Descargar MinGW instalador desde la página de instalación por encima de
    • Run MinGW instalador y asegúrese de elegir los siguientes paquetes:

      - MinGW-desarrollador-toolkit
      - mingw32 base
      - mingw32-GCC g ++
      - MSYS base

    • Añadir MinGW y Msys caminos bin a la variable de entorno PATH, si no cambia las carpetas de instalación predeterminada a través de anuncio d:

    C:\MinGW\msys\1.0\bin;C:\MinGW\bin;
    • cierre de sesión y volver a iniciarla para asegurarse de Medio Ambiente VARs patadas en
  2. Crear un nuevo proyecto de C++ en Eclipse:

    • Nueva -> C++ Projects
    • Elija Tipo de Proyecto: Ejecutables -> Proyecto
      Hello World C++ (ahora a la derecha, bajo Toolchains veréis MinGW GCC)
    • Seleccionar MinGW GCC de la lista Toolchains
    • Hit Finalizar
  3. En usted, Hello World Project, verá + src carpeta, y + Incluye (Si es así, probablemente sea bueno ir).

  4. Proyecto de construcción
  5. Run it!
0

Recibí este mismo error después de cambiar el nombre y mover los archivos fuente. Ninguna de las soluciones propuestas funcionó para mí y rastreé el error para que los metaarchivos del directorio Debug no se actualizaran. Eliminar el directorio completo de Debug y volver a compilar el proyecto resolvió el problema para mí.

2

usted tiene 2 casos

  • Si crea Makefile por sí mismo, ir a
  1. Seleccione Proyecto-> Propiedades de la barra de menú.
  2. Haga clic en Crear C/C++ a la izquierda en el cuadro de diálogo que aparece.
  3. Desactivar el Makefile de forma automática -> En la pestaña Configuración Builder a la derecha, compruebe y asegúrese de que la "ubicación Build" es correcto (que la ubicación es en el Makefile)
  • Si no tienen Makefile -> Es necesario Eclipse DS-5 para ayudarle a crear Makefile
  1. Seleccione Proyecto-> Propiedades la barra de menú.
  2. Haga clic en Crear C/C++ a la izquierda en el cuadro de diálogo que aparece.
  3. Habilitar el Makefile automáticamente

Aconsejo a crear Makefile por su cuenta propia

+1

Consejo de "Build location" me ayudó. – MattAPiroglu

Cuestiones relacionadas