Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

dasViech

Frischling

  • »dasViech« ist der Autor dieses Themas

Beiträge: 2

Beruf: Schüler

  • Private Nachricht senden

1

17.03.2007, 13:39

Linkerproblem beim SDL - Spiel

Moin erstmal,
Ich habe ein Problem beim Builden des Projekts.
Ich habe alles so wie im Buch gemacht und sogar eine neue Version der SDL runtergeladen, aber es wird mir folgender Fehler angezeigt.

Zitat

Compiling...
Asteroid.cpp
Framework.cpp
Game.cpp
main.cpp
Player.cpp
Shot.cpp
Sprite.cpp
Timer.cpp
Generating Code...
Compiling manifest to resources...
Linking...
C:\Projekte\SDL-1.2.11\lib\SDL.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x2B0


Ich hoffe ihr könnt mir helfen
dasViech[/code][/quote][/cpp]
...Hallo...

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

17.03.2007, 13:41

Hast du SDL.dll als Bibliothek angegeben???
Du musst natürlich SDL.lib angeben.

dasViech

Frischling

  • »dasViech« ist der Autor dieses Themas

Beiträge: 2

Beruf: Schüler

  • Private Nachricht senden

3

18.03.2007, 12:35

ja das stimmt. Ich habe das geändert aber nun wird mir das angezeigt:

Zitat

Verknüpfen...
Game.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW" in Funktion ""public: class std::list >::_Const_iterator<1> & __thiscall std::list >::_Const_iterator<1>::operator++(void)" (??E?$_Const_iterator@$00@?$list@VCAsteroid@@V?$allocator@VCAsteroid@@@std@@@std@@QAEAAV012@XZ)".
Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
C:\Projekte\Autogame\Game1\Debug\Game1.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.

[/quote]
...Hallo...

4

18.03.2007, 19:58

Hast du die SDL.dll selbst auch deinem Projekt hinzugefügt?

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

5

18.03.2007, 21:18

Zitat von »"behaccr8d"«

Hast du die SDL.dll selbst auch deinem Projekt hinzugefügt?

Das is Quatsch und hat nix mit dem Problem zu tun.

6

20.03.2007, 12:10

Zitat von »"dasViech"«

ja das stimmt. Ich habe das geändert aber nun wird mir das angezeigt:

Zitat

Verknüpfen...
Game.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW" in Funktion ""public: class std::list >::_Const_iterator<1> & __thiscall std::list >::_Const_iterator<1>::operator++(void)" (??E?$_Const_iterator@$00@?$list@VCAsteroid@@V?$allocator@VCAsteroid@@@std@@@std@@QAEAAV012@XZ)".
Player.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW".
C:\Projekte\Autogame\Game1\Debug\Game1.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.


Schau mal hier:
https://www.spieleprogrammierer.de/phpBB2/viewtopic.php?t=7204

Dort gibt es dasselbe Problem und scheinbar auch die Lösung! :)

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

7

20.03.2007, 13:10

die dll muss beim ausführen des programms entweder im verzeichnis der exe oder im ordner system32 liegen. das programm kann aber nicht ausgeführt werden, wenn es nichtmal verlinkt wird, wie in diesem fall.

und eine dll "dem projekt hinzufügen" klingt als wenn du die irgendwo in den projekteinstellungen den dll namen reinschreiben willst.

poste bitte keine lösungsvorschläge wenn du keinen schimmer von der ursache hast :?

8

20.03.2007, 18:29

Zitat von »"rewb0rn"«

und eine dll "dem projekt hinzufügen" klingt als wenn du die irgendwo in den projekteinstellungen den dll namen reinschreiben willst.

poste bitte keine lösungsvorschläge wenn du keinen schimmer von der ursache hast :?

Ich benutzt VC++ 6.0 und dort klickt man bei den Projektdateien auf "Dateien zu Projekt hinzufügen..." und wählt dann bei "Dateien in Projekt einfügen" die SDL.dll.

Aber ich bitte vielmals um Entschuldigung, dass ich ihm helfen wollte.

Wird nicht wieder vorkommen. *o0*

rewb0rn

Supermoderator

Beiträge: 2 773

Wohnort: Berlin

Beruf: Indie Game Dev

  • Private Nachricht senden

9

20.03.2007, 18:52

Ich gehe dann mal davon aus, dass du die Dll statisch linkst, oder wozu soll das gut sein? Zugegeben hab ich das noch nicht gemacht, das scheint mir die einzige sinnvolle Begründung zu sein. Aber das hat dann immer noch nix mit dem Linker Fehler zu tun.

Zitat von »"David Scherfgen"«

Hast du SDL.dll als Bibliothek angegeben???
Du musst natürlich SDL.lib angeben.

Werbeanzeige