2017-01-24 5 views
0

Ich versuche ein Spiel mit Allegro 5 in Visual Studio Express 2012 zu machen, aber die alte Vorlage, die ich gespeichert habe, scheint nicht mehr funktional zu sein. VS beschwert sich sehr über zwei bestimmte Dateien, file.h und fmaths.h, die von Syntaxfehlern bis zu nicht deklarierten Bezeichnern alles Mögliche im Griff haben. Hier sind meine Fehler:Arbeitsprogramm mit Allegro 5 funktioniert nicht mehr

Error 1 error C2059: syntax error : '__cdecl' c:\allegro5-msvc11\include\allegro5\file.h 33 1 Super Boulder Whisperer 
Error 2 error C2061: syntax error : identifier 'ALLEGRO_FILE' c:\allegro5-msvc11\include\allegro5\file.h 33 1 Super Boulder Whisperer 
Error 3 error C2091: function returns function c:\allegro5-msvc11\include\allegro5\file.h 33 1 Super Boulder Whisperer 
Error 4 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\allegro5-msvc11\include\allegro5\file.h 33 1 Super Boulder Whisperer 
Error 6 error C2065: 'ERANGE' : undeclared identifier c:\allegro5-msvc11\include\allegro5\inline\fmaths.inl 43 1 Super Boulder Whisperer 
Error 7 error C2065: 'ERANGE' : undeclared identifier c:\allegro5-msvc11\include\allegro5\inline\fmaths.inl 72 1 Super Boulder Whisperer 
Error 8 error C2065: 'ERANGE' : undeclared identifier c:\allegro5-msvc11\include\allegro5\inline\fmaths.inl 95 1 Super Boulder Whisperer 
Error 9 error C2065: 'ERANGE' : undeclared identifier c:\allegro5-msvc11\include\allegro5\inline\fmaths.inl 172 1 Super Boulder Whisperer 
Error 10 error C2065: 'ERANGE' : undeclared identifier c:\allegro5-msvc11\include\allegro5\inline\fmaths.inl 194 1 Super Boulder Whisperer 
Error 11 error C2065: 'EDOM' : undeclared identifier c:\allegro5-msvc11\include\allegro5\inline\fmaths.inl 235 1 Super Boulder Whisperer 
Error 12 error C2065: 'EDOM' : undeclared identifier c:\allegro5-msvc11\include\allegro5\inline\fmaths.inl 246 1 Super Boulder Whisperer 

Ich bin nicht davon überzeugt, dass es ein Problem mit meinem enthält und Abhängigkeiten, da dieses Programm zu einer Zeit war der Bau völlig in Ordnung, auf der gleichen Maschine. Irgendwelche Ideen?

+0

Gehen Sie zum Ausgabefenster anstelle der Fehlerliste und finden Sie heraus, auf welche Ihrer eigenen Dateien diese letztendlich bezogen sind. Etwas könnte gebrochen werden, bevor diese beinhaltet. (Die Fehlerliste ist ziemlich Müll für das Herausfinden, was falsch gelaufen ist, da es keinen Kontext anzeigt.) – molbdnilo

+0

Scheint im Ausgabefenster seine Hauptkrippen sind mit file.h (beschwert sich über ein paar verschiedene Dinge) und fmaths.inl (beschweren sich über nicht angemeldete Bezeichner). Dies ist eine Allegro-Datei, daher bin ich mir nicht ganz sicher, was das eigentliche Problem ist. –

+0

Welche Allegro-Version verwenden Sie? Wenn ich Zeile 33 von file.h im letzten Allegro 5 (5.2.2) anschaue, sehe ich keine Möglichkeit, diese Nachrichten zu erhalten, außer durch Neudefinition des Makros 'AL_METHOD'. Aber Ihre Zeilennummern in fmaths.inl stimmen nicht mit dem Code in 5.2.2 ... überein (In jedem Fall müssen Sie herausfinden, was passiert * vor * '#include" file.h "'. Suchen Sie nach Ihren eigenen Dateien in der Ausgabe.) – molbdnilo

Antwort

0

Ich fand ein sehr ähnliches Problem nach dem Ändern meiner Include-Verzeichnisse. Nachdem ich das Build-Ausgabeprotokoll überprüft hatte, um zu sehen, welche Datei schuld war, bemerkte ich, dass es sich über eine Header-Datei beschwerte, die von der betreffenden Datei nicht einmal enthalten war.

Es stellt sich heraus, dass eine meiner Header-Dateien den gleichen Namen wie eine der von Allegro enthaltenen Header-Dateien hatte und der neue Pfad, den ich meinen Include-Verzeichnissen hinzugefügt hatte, Priorität hatte. Es enthielt meine Header-Datei anstelle desjenigen, nach dem Allegro eigentlich gesucht hatte.

Wenn Sie Headerdateien mit einfachen Namen wie "File.h", "IO.h" usw. haben, die wahrscheinlich verwendet werden, versuchen Sie, sie in etwas anderes umzubenennen.

Verwandte Themen