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

Bu1

Frischling

Beiträge: 66

Beruf: Schüler

  • Private Nachricht senden

31

25.02.2011, 20:51

Has du die TriBase-Engine schonmal neu erstellt? Wenn nicht mach das mal!

Zitat

Sämtliche Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt :!:
Sie können nach belieben kopiert und weiterverwändet werden. :P

32

25.02.2011, 21:56

Nein hab ich noch nicht ^^ leider bekomme ich nach den genauen Anweisungen im Forum nur diese Fehlermeldung beim neu erstellen der Tribase ?(

Zitat


1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(G:\ney\Try to be a Hero\Hero1.1\TriBase\.\Debug\TriBaseD.dll) entspricht nicht dem OutputFile-Eigenschaftswert (G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\TriBaseD.lib) von Linker. Das Projekt wird daher möglicherweise nicht ordnungsgemäß erstellt. Damit dieses Problem behoben werden kann, müssen die Eigenschaftswerte für $(OutDir), $(TargetName) und $(TargetExt) dem in %(Link.OutputFile) angegebenen Wert entsprechen.
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(991,5): warning MSB8012: TargetExt(.dll) entspricht nicht dem OutputFile-Eigenschaftswert (.lib) von Linker. Das Projekt wird daher möglicherweise nicht ordnungsgemäß erstellt. Damit dieses Problem behoben werden kann, müssen die Eigenschaftswerte für $(OutDir), $(TargetName) und $(TargetExt) dem in %(Link.OutputFile) angegebenen Wert entsprechen.
1> Bibliothek ".\Debug/TriBaseD.lib" und Objekt ".\Debug/TriBaseD.exp" werden erstellt.
1>LINK : fatal error LNK1104: Datei ".\Debug/TriBaseD.lib" kann nicht geöffnet werden.
========== Alles neu erstellen: 0 erfolgreich, Fehler bei 1, 0 übersprungen ==========
Ich fang an zu glauben, dass programmieren nichts für mich ist :P

Bu1

Frischling

Beiträge: 66

Beruf: Schüler

  • Private Nachricht senden

33

26.02.2011, 06:46

Ich fang an zu glauben, dass programmieren nichts für mich ist :P
Glaub ich nicht! Bei mir waren am Anfang genau so viele Fehler. :D

Was die Fehler betrift. Hast du die DShowBaseClasses (findnest du im TriBase-Verzeichnis\Include\DshowBaseClasses) neu erstellt?
Und vileicht soltest du vorher noch den Schreibschutz vom TriBase-Ordner entfernen :!:

Zitat

Sämtliche Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt :!:
Sie können nach belieben kopiert und weiterverwändet werden. :P

Bu1

Frischling

Beiträge: 66

Beruf: Schüler

  • Private Nachricht senden

34

26.02.2011, 06:51

Zitat

Zitat

#include <Windows.h>
#include <G:\ney\Try to be a Hero\Hero1.1\TriBase\Include\TriBase.h>
Du must auserdem nur "#include <TriBase.h>" schreiben, du brauscht nicht "#include <G:\ney\Try to be a Hero\Hero1.1\TriBase\Include\TriBase.h>" :D

Zitat

Sämtliche Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt :!:
Sie können nach belieben kopiert und weiterverwändet werden. :P

35

26.02.2011, 17:10

Glaub ich nicht! Bei mir waren am Anfang genau so viele Fehler. :D
Toll ein Leidensgenosse ^^

Was die Fehler betrift. Hast du die DShowBaseClasses (findnest du im TriBase-Verzeichnis\Include\DshowBaseClasses) neu erstellt?
Und vileicht soltest du vorher noch den Schreibschutz vom TriBase-Ordner entfernen :!:
Jop hab ich alles gemacht :) Danke für den Tipp mit dem #include 8)
Ich fang nochmal ganz von vorne an und schreibe Schritt für Schritt mit, was hoffentlich hilft das Problem zu finden.

36

26.02.2011, 18:06

Schritt für Schritt 1.1: Das Streben nach Glück

  • Kopieren der Ordner "Tribase" und "Beispiele" von der CD auf den Pc
  • TriBase\Include\DShowBaseClasses öffnen und konvertieren
  • Die 3 includes und 3 libs zu den Verzeichnissen der ShowbaseClasses hinzufügen
Rechtsklick auf BaseClasses -> Konfigurationseingenschaften -> VC++-Verzeichnisse -> Includeverzeichnisse:
...\TriBase\Include
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include

Rechtsklick auf BaseClasses -> Konfigurationseingenschaften -> VC++-Verzeichnisse -> Bibliotheksverzeichnisse:
...\TriBase\Lib
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib
  • Rechtsklick auf das Projekt → Eigenschaften →
    Konfigutationseigenschaften → Allgemein → Zielname: „StrmBase“ bei
    ReleaseVersion und „StrmBaseD“ bei DebugVersion.

  • Unter Konfigutationseigenschaften → Bibliothekar → Allgemein sollte die
    Ausgabedatei entsprechend „Release\StrmBase.lib“ bei der ReleaseVersion
    und „Debug\StrmBaseD.lib“ bei der DebugVersion sein.
  • In Tribase die Datei TriBase 2005 öffnen
  • Rechtsklick auf das Projekt → Eigenschaften →
    Konfigurationseigenschaften → Linker → Eingabe → Zusätzliche
    Eigenschaften: Hier muss „dxerr9.lib“ in „dxerr.lib“ geändert werden.
  • Bei Konfigurationseigenschaften → Allgemein → Zielname „TriBase“ für die
    ReleaseVersion und „TriBaseD“ für die DebugVersion angeben. Unter
    Konfigurationseigenschaften → Bibliothekar → Allgemein sollte die
    Ausgabedatei entsprechend „Release\TriBase.lib“ bei der ReleaseVersion
    und „Debug\TriBaseD.lib“ bei der DebugVersion sein.
  • TriBase.h öffnen:
DXErr9.h“ zu „DXErr.h“ ändern
#define DXGetErrorString9 DXGetErrorString“ und

„#define DXGetErrorDescription9 DXGetErrorDescription“ hinzufügen
  • Resource.rc öffen:
#include "mfc/afxres.h"“ ändern zu „#include windows.h“ und das Makro „#define IDC_STATIC -1“ hinzufügen.
  • Rechtsklick auf TriBase → Neu Erstellen!
Hier fängt es an lustig zu werden denn ich bekomme dann diese Fehlermeldung :P

Zitat

1> Code wird generiert...
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(G:\ney\Try to be a Hero\Hero1.1\TriBase\.\Debug\TriBaseD.dll) entspricht nicht dem OutputFile-Eigenschaftswert (G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\TriBaseD.lib) von Linker. Das Projekt wird daher möglicherweise nicht ordnungsgemäß erstellt. Damit dieses Problem behoben werden kann, müssen die Eigenschaftswerte für $(OutDir), $(TargetName) und $(TargetExt) dem in %(Link.OutputFile) angegebenen Wert entsprechen.
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(991,5): warning MSB8012: TargetExt(.dll) entspricht nicht dem OutputFile-Eigenschaftswert (.lib) von Linker. Das Projekt wird daher möglicherweise nicht ordnungsgemäß erstellt. Damit dieses Problem behoben werden kann, müssen die Eigenschaftswerte für $(OutDir), $(TargetName) und $(TargetExt) dem in %(Link.OutputFile) angegebenen Wert entsprechen.
1>Link:
1> Bibliothek ".\Debug/TriBaseD.lib" und Objekt ".\Debug/TriBaseD.exp" werden erstellt.
1>LINK : fatal error LNK1104: Datei ".\Debug/TriBaseD.lib" kann nicht geöffnet werden.
1>
1>Fehler beim Erstellen

GameProggD3D

Frischling

Beiträge: 67

Wohnort: Walding

Beruf: Schüler

  • Private Nachricht senden

37

26.02.2011, 19:20

Ich hab genau die gleiche Fehlermeldung! Seit Tagen müh ich mich damit ab, wenn du ne Lösung findest, musst du sie posten! (Die bisher einzige Antwort von dem Thread in dem ich nach ner Lösung zu dieser Fehlermeldung gefragt hab: Warnung/Erstellungsfehler von Beispiel $(OutDir)) Vielleicht hilft sie dir ja. :S
Programmiere Zombie-Spiel mit nem Freund

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

38

26.02.2011, 19:21

Was genau ist dir denn an meiner Antwort dort unklar? Das Problem ist eben, genau wie die Warnung sagt, dass der über die Projekteigenschaften angegebene Output Path (Debug\Dreieck.exe) ein anderer ist als der den der Linker verwendet (Debug\02-03 Dreieck.exe), was dazu führt dass das Kompilat wohl in einem anderen Pfad landet als jener mit dem die im Custom Build Step darauf folgende copy Operation danach sucht und copy und damit auch der Build in weiterer Folge fehlschlägt.

Das Problem in diesem Thread hier ist offenbar genau das gleiche nur diesmal findet der Linker danach die .lib die er sucht nicht, wohl ebenfalls weil sie einen falschen Dateinamen hat (sieht mir aus als wäre irgendwie die Dateiendung auf unsachgemäße Art von .dll auf .lib geändert worden).

Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von »dot« (26.02.2011, 19:38)


39

26.02.2011, 19:43

Ich hab genau die gleiche Fehlermeldung! Seit Tagen müh ich mich damit ab, wenn du ne Lösung findest, musst du sie posten! (Die bisher einzige Antwort von dem Thread in dem ich nach ner Lösung zu dieser Fehlermeldung gefragt hab: Warnung/Erstellungsfehler von Beispiel $(OutDir)) Vielleicht hilft sie dir ja. :S
Wir sitzen alle im selben Boot ;)

Was genau ist dir denn an meiner Antwort dort unklar? Das Problem ist eben, genau wie die Warnung sagt, dass der über die Projekteigenschaften angegebene Output Path (Debug\Dreieck.exe) ein anderer ist als der den der Linker verwendet (Debug\02-03 Dreieck.exe), was dazu führt dass das Kompilat wohl in einem anderen Pfad landet als jener mit dem die im Custom Build Step darauf folgende copy Operation danach sucht, was dazu führt dass copy und damit auch der Build letztendes Fehlschlägt.

Das Problem in diesem Thread hier ist offenbar genau das gleiche nur diesmal findet der Linker danach die .lib die er sucht nicht, wohl ebenfalls weil sie einen falschen Dateinamen hat (sieht mir hier aus als wäre irgendwo die Dateiendung auf unsachgemäße Art von .dll auf .lib geändert worden).
Danke für den Tipp. Ich habe beim Linker "Debug\TriBaseD.lib" zu "Debug\TriBaseD.dll" geändert und nun habe ich diese Fehlermeldung hier stehen. Doch es scheint ja, dass das Erstellen erfolgreich war

Zitat

1> Code wird generiert...
1>Link:
1> Bibliothek ".\Debug/TriBaseD.lib" und Objekt ".\Debug/TriBaseD.exp" werden erstellt.
1>strmbased.lib(amfilter.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(amvideo.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(asyncio.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(asyncrdr.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(combase.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(ctlutil.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(mtype.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(renbase.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(wxdebug.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(wxlist.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>strmbased.lib(wxutil.obj) : warning LNK4204: Für "G:\ney\Try to be a Hero\Hero1.1\TriBase\Debug\vc100.pdb" fehlen Debuginformationen für das Verweismodul; Objekt wird verknüpft, als ob keine Debuginformationen vorhanden wären.
1>Manifest:
1> Die Datei ".\Debug\TriBaseD.dll.embed.manifest" wird gelöscht.
1>LinkEmbedManifest:
1> TriBase 2005.vcxproj -> G:\ney\Try to be a Hero\Hero1.1\TriBase\.\Debug\TriBaseD.dll
1>PostBuildEvent:
1> 1 Datei(en) kopiert.
1> Zugriff verweigert
1> 0 Datei(en) kopiert.
1> 1 Datei(en) kopiert.
1>FinalizeBuildStatus:
1> Die Datei ".\Debug\TriBase.unsuccessfulbuild" wird gelöscht.
1> Aktualisieren des Timestamps von ".\Debug\TriBase.lastbuildstate".
1>
1>Das Erstellen war erfolgreich.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

40

26.02.2011, 19:48

Danke für den Tipp. Ich habe beim Linker "Debug\TriBaseD.lib" zu "Debug\TriBaseD.dll" geändert und nun habe ich diese Fehlermeldung hier stehen. Doch es scheint ja, dass das Erstellen erfolgreich war

Natürlich war das Erstellen erfolgreich, dem Linker ist es ja komplett egal wie die Datei heißt die er erzeugt. In dem Fall hast du nun wohl eine lib erzeugt die eben TribaseD.dll heißt, warum auch immer du das tun willst. Das Problem ist dass wohl die restliche Projektkonfiguration noch davon ausgeht dass deine lib auf .lib endet und nicht auf .dll.

Hinweis am Rande: Wenn du die Endung einer Datei von .lib auf .dll änderst wird nicht plötzlich auf magische Art eine dynamische Bibliothek draus...

Werbeanzeige