JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=3a2bcb5814d6a771fcb184e1d6bc3af4Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Versionen statischer Win32-Bibliotheken

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Ingmar
Mini JLI'ler



Anmeldedatum: 05.08.2003
Beiträge: 3

Medaillen: Keine

BeitragVerfasst am: 24.08.2003, 21:13    Titel: Versionen statischer Win32-Bibliotheken Antworten mit Zitat

Zur Verbesserung der Übersichtlichkeit fasse ich thematisch zueinander gehörige Klassen in Bibliotheken zusammen. Um - wie bei der Verwendung der Windows- und DirectX-Bibliotheken - nur jeweils eine Version der Bibliotheken zu verwenden, muß diese sowohl zum Erstellen der Debug- als auch der Release-Version einer Anwendung geeignet sein.

Wenn beim Erstellen der Debug-Version einer Win32-Anwendung der Linker die Release-Version einer statischen Win32-Bibliothek einbindet, wird die Erstellung erfolglos abgebrochen.
Genauso im umgekehrten Fall, daß der Linker beim Erstellen der Release-Version der Anwendung die Debug-Version der Bibliothek einbindet.

In beiden Fällen wird der Konflikt zwischen Bibliotheken unterschiedlicher Konfigurationen (Debug oder Release) als Grund dafür angegeben.

Question Gibt es eine Möglichkeit, eine statische Win32-Bibliothek zu erstellen, die sowohl zum Erstellen der Debug- als auch der Release-Version einer Win32-Anwendung geeignet ist? Question
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Christian Rousselle
Site Admin


Alter: 48
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 24.08.2003, 21:46    Titel: Antworten mit Zitat

Zitat:

Wenn beim Erstellen der Debug-Version einer Win32-Anwendung der Linker die Release-Version einer statischen Win32-Bibliothek einbindet, wird die Erstellung erfolglos abgebrochen.
Genauso im umgekehrten Fall, daß der Linker beim Erstellen der Release-Version der Anwendung die Debug-Version der Bibliothek einbindet.


Was für eine Felhermeldung bekommst du denn? Bist du sicher, dass es mit Debug/Release-Version zu tun hat. Ich denke das sollte gehen. Hat das ev. was mit Single/Multithreaded Bibliotheken zu tun?

Davon abgesehen, ist es natürlich besser in einem Debug-Build gegen die Debug-Bibliotheken und im Release-Buidl gegen die Release-Bibliotheken zu linken. Visual C++ bietet da ja auch eien gute Unterstützung. Was spricht dagegen, z.B. unter Projekt->EInstellungen->Linker->Kategorie Eingabe einmal den Pfad zur Release und einmal zur Debug-Lib anzugeben?

Christian
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Ingmar
Mini JLI'ler



Anmeldedatum: 05.08.2003
Beiträge: 3

Medaillen: Keine

BeitragVerfasst am: 25.08.2003, 10:50    Titel: Antworten mit Zitat

Dies sind die Fehlermeldungen, die nach Abbruch des Bindens im Ausgabebereich von Visual C++ angezeigt werden:

Code:
-----Konfiguration: usingLib - Win32 Debug-----
Kompilierung läuft...
USINGLIB.cpp
Linker-Vorgang läuft...
LINK : warning LNK4098: Standardbibliothek "LIBC" steht in Konflikt mit anderen Bibliotheken; /NODEFAULT:Bibliothek verwenden

-----Konfiguration: usingLib - Win32 Release-----
Kompilierung läuft...
USINGLIB.cpp
Linker-Vorgang läuft...
LINK : warning LNK4075: /EDITANDCONTINUE wird aufgrund der Angabe von /INCREMENTAL:NO ignoriert
LINK : warning LNK4098: Standardbibliothek "LIBCD" steht in Konflikt mit anderen Bibliotheken; /NODEFAULT:Bibliothek verwenden


Natürlich ist es möglich in den Projekteinstellungen individuelle Pfade zu Debug- und Release-Versionen der Bibliotheken anzugeben. Da ich jedoch beabsichtige, meine Bibliotheken auch anderen Nutzern zur Verfügung zu stellen, wäre eine möglichst einfache Handhabung wünschenswert.

Es scheint zudem möglich zu sein, eine für beide Linkerprozesse geeignete Bibliothek zu erstellen. Die Win32-Bibliothekdateien scheinen beispielsweise in jeweils nur einer Konfiguration vorzuliegen, denn unter Extras>Optionen>Verzeichnisse ist ausschließlich der Pfad "Microsoft Visual Studio\VC98\LIB" voreingestellt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Christian Rousselle
Site Admin


Alter: 48
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 25.08.2003, 11:00    Titel: Antworten mit Zitat

Ich sehe bei dir nur Warnungen keine Fehler.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum