Eclipse CDT: ninguna regla para hacer que el objetivo sea todo


Mi CDT Eclipse sigue quejándose "make: * * * no rule to make target all" cuando estoy tratando de compilar el fragmento de código a continuación:

#include <iostream>
using namespace std;

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

¿Alguien sabe cómo resolver esto? He leído el post con el título similar: make: *** Ninguna regla para hacer que el objetivo sea `todo'. Dejar. Error de eclipse Pero ninguna de esas respuestas ayudan...

Muchas Gracias!

Author: Community, 2012-09-25

10 answers

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ús.
  2. Haga clic en C/C++ Build a la izquierda en el cuadro de diálogo que aparece.
  3. En la pestaña Configuración del constructor a la derecha, seleccione "Generar Makefiles automáticamente" en la sección Generación de Makefiles.
  4. Pulsa OK y vuelve a construir.
 34
Author: ScoPi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-08 13:33:16

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

  1. Vaya a la pestaña Propiedades del proyecto > Compilación de C/C++ > Comportamiento.
  2. Deje la Compilación (Compilación Incremental) Marcada.
  3. Ingrese "test" en el cuadro de texto junto a Build (Incremental Build).
  4. Construir proyecto. Verá un mensaje de error.
  5. Vuelva a Build (Incremental Build) y elimine "test".
  6. Construir proyecto.
 10
Author: user1146300,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-12-09 20:12:13
  1. Seleccione Proyecto- > Propiedades en la barra de menús.

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

  3. En la pestaña Configuración del constructor a la derecha, verifique y asegúrese de que la "Ubicación de compilación" sea correcta.
 8
Author: raptoravis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-22 07:01:12

En C/C++ Build -> Builder Settings, seleccione Internal builder (en lugar de External builder).

Funciona para mí.

 7
Author: wall-e,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-18 15:02:28

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

Asumo que no has escrito la regla de "todo" de la que Eclipse se queja. Si este es el caso, siga estos pasos:

  1. Vaya a la pestaña Propiedades del proyecto > Compilación de C/C++ > Comportamiento.
  2. Deje la Compilación (Compilación Incremental) Marcada.
  3. Elimine "all" del cuadro de texto junto a Build (Compilación incremental).
  4. Compilar lejos!

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

 5
Author: drmuelr,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-06-17 02:51:19

Tiene 2 casos

  • Si crea Makefile usted mismo, vaya a
  1. Seleccione Proyecto->Propiedades en la barra de menús.
  2. Haga clic en C/C++ Build a la izquierda en el cuadro de diálogo que aparece.
  3. Deshabilitar generar makefile automáticamente - > En la pestaña Configuración del constructor a la derecha, verifique y asegúrese de que la" Ubicación de compilación " sea correct (Esa ubicación es donde tu Makefile)
  • Si no tienes Makefile - > necesitas Eclipse DS-5 para ayudarle a crear Makefile
  1. Seleccione Proyecto->Propiedades en la barra de menús.
  2. Haga clic en C/C++ Build a la izquierda en el cuadro de diálogo que aparece.
  3. Habilitar generar makefile automáticamente

Le aconsejo que cree Makefile por su cuenta

 3
Author: Dang_Ho,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-13 03:47:03

A veces, si está haciendo un destino a través de make files, verifique que todos los archivos c tengan el nombre correcto con la estructura de archivos correcta.

 2
Author: bilalraja,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-07-24 14:10:44

Project -> Clean -> Clean all Projects and then Project -> Build Project worked for me (hice la des-comprobación generar make-file automáticamente y luego volver a comprobarlo antes de hacer esto). Esto fue para un proyecto AVR (programación de microprocesadores)a través del complemento AVR CDT en eclipse Juno.

 2
Author: Demortes,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-08-21 16:13:09

Recibí este mismo error después de cambiar el nombre y mover los archivos de origen. Ninguna de las soluciones propuestas funcionó para mí y rastreé el error para que los meta-archivos bajo el directorio de depuración no se actualizaran. Eliminar todo el directorio de depuración y reconstruir el proyecto resolvió el problema para mí.

 1
Author: Savvas Savvides,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-06-21 18:45:05

Si las soluciones anteriores no funcionaron para usted, entonces -

Podría ser que no instaló correctamente los paquetes del compilador de C++, flow this: (Instrucciones para Win7, 32bit/64bit)

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

    (Instalé MinGW (Cómo instalar videos se puede encontrar en YouTube))

    En caso de que elija instalar paquetes MinGW:

    • Descargue el instalador de MinGW desde la página de instalación anterior
    • Ejecute el instalador de MinGW y asegúrese de elegir los siguientes paquetes:

      -mingw-developer-toolkit
      - mingw32-base
      - mingw32-gcc-g++
      -msys-base

    • Agregue rutas de MinGW y MSYS bin a su RUTA variable de entorno, si no ha cambiado las carpetas de instalación predeterminadas, debe agregar:

    C:\MinGW\msys\1.0\bin;C:\MinGW\bin;
    • Cierre de sesión y vuelva a iniciar sesión para asegurarse de que los var del entorno se activaron
  2. Crear un nuevo proyecto de C++ en eclipse:

    • Nuevo - > Proyectos C++
    • Elija el tipo de proyecto: Ejecutables - > Hello World C++ project
      (Ahora a la derecha, debajo de las cadenas de herramientas verá MinGW GCC)
    • Seleccione MinGW GCC de las Cadenas de herramientas list
    • Hit Finish
  3. En tu proyecto Hello World verás la carpeta + src, y + Includes (Si es así, probablemente estés listo).

  4. Proyecto de construcción
  5. ejecutarlo!
 0
Author: Mercury,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-08 08:59:58