could not create makefile i o error 32



  • Folgendes:

    Ich versuch ein Projekt zu kompilieren.
    Das Projekt besteht aus einer main, einer header und einer cpp Datei.
    Ich lege ein Projekt an. Füge die Dateien hinzu und versuche zu kompilieren.

    Jedoch kommt folgende Fehlermeldung:

    could not create makefile i o error 32 (Windows)

    C:\Dev-Cpp\Makefile.win [Build Error] No rule to make target `all'. Stop.

    Header:

    #ifndef _ADDIERER_H_INCLUDED
    #define _ADDIERER_H_INCLUDED
    
    class Addierer
    {
    private:
    	double dErfolgreich;
    
    public:
    	Addierer();
    	~Addierer();
    	double add (double* pd0, double* pd1);
    	int getError();
    };
    
    #endif
    

    main:

    #include <iostream> 
    #include "Addierer.h"
    using namespace std;
    
    int main ()
    {
    	Addierer a;
    
    	double d0 = 0.0;
    	double d1 = 0.0;
    	cout <<" 1. Summand (>0): "; cin >> d0;
    	cout <<" 2. Summand (>0): "; cin >> d1;
    
    	double summe = a.add(&d0, &d1);
    
    	if (a.getError() == 0)
    	{
    		cout << d0 << " + " << d1 << " = " << summe << endl;
    	} else
    	{
    		cout << "Fehler: Summand negativ!" << endl;
    	}
    
    	return 0;
    }
    

    cpp

    #include "Addierer.h"
    #include <iostream>
    using namespace std;
    
    Addierer::Addierer()
    {
    	dErfolgreich = -1.0;
    }
    
    Addierer::~Addierer()
    {
    }
    
    double Addierer::add (double* pd0, double* pd1)
    {
    	double ergebnis = -1.0;
    	if (*pd0 >= 0 && *pd1 >= 0)
    	{ 
    		ergebnis = *pd0 + *pd1;
    		dErfolgreich = 0;
    	}
    
    	return ergebnis;
    }
    
    int Addierer::getError()
    {
    	return dErfolgreich;
    }
    

    Wäre nett wenn mir jemand weiterhelfen könnte.



  • Funktioniert es denn bei

    #include <iostream>
    
    using namespace std;
    
    int main()
    {
        cout << "Hello World" << endl;
    }
    

    ?



  • Dürfte nicht funktionieren, da return 0 fehlt.



  • Das für main egal, das fügt der Compiler selbst hinzu.



  • ne funktioniert nicht



  • Das fügt der Compiler eben nicht hinzu. es kommt genau die selbe fehlermeldung.


  • Mod

    Reeko schrieb:

    Das fügt der Compiler eben nicht hinzu. es kommt genau die selbe fehlermeldung.

    Und die Fehlermeldung sagt, dass der Compiler Probleme wegen fehlendem return hat? Wohl kaum. Besonders nicht, wenn die gleichbleibende Fehlermeldung

    could not create makefile i o error 32 (Windows)

    lautet. Übersetz doch mal.

    (Außerdem hat Eisflamme 100% recht, return 0 wird in C++ in main implizit hinzugefügt)

    Spekulation: Das wird ein Problem wegen falsch gesetzter Rechte sein.



  • Nur um alle Sachen abzudecken:
    Auf Grund deines Pfades spekuliere ich dadrauf, dass du Windows benutzt, hast du denn überhaupt einen Compiler installiert? Bei Windows ist nämlich keiner vorinstalliert.

    PS.: Mir war klar, dass der "return 0"-Kommentar kommen wird 😃

    Edit: was mir am Pfad noch auffällt, ich weiß es nicht, da ich nie unter Windows entwickle, gibt es evtl. ein Problem mit dem Minus (-) im Pfadnamen? Kann ich mir zwar kaum vorstellen, aber lieber überprüfen, bevor wenn es an einem so trivialem Fehler liegt.



  • Ja, ich hab windows benutzt. Entwickel mit Dev-C++, ist da kein Compiler?



  • Hexenwerk! Hab zufällig die mein des Projektes gelöscht und dann wieder eingefügt jetzt klappts... hätte gern eine wissenschaftliche Erklärung von euch;-)



  • Wenn Du uns sagst, was Du anders gemacht hast, können wir Dir evtl. ne Erklärung geben, so wird das recht schwer 😉



  • Bist du noch mit dem alten DEV 4.9.9.2 am werkeln?
    Da wurde die IDE mit Delphi geschrieben und der Compiler ist meist der alte gcc 3.4.2
    Dann schau mal hier:
    http://de.wikipedia.org/wiki/Orwell_Dev-C%2B%2B

    Bei älteren Microsoft VS soll das manchmal auch so gewesen sein das nichts mehr ging und, wenn das Projekt dann neu erstellt wurde, die Probleme nicht mehr zu finden waren.

    MfG f.-th.


Anmelden zum Antworten