[SFML] Linker-Warnungen mit statischem Linken

Programmiersprachen, APIs, Bibliotheken, Open Source Engines, Debugging, Quellcode Fehler und alles was mit praktischer Programmierung zu tun hat.
Antworten
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

[SFML] Linker-Warnungen mit statischem Linken

Beitrag von BeRsErKeR »

Hallo ich wollte die SFML statisch linken, was auch problemlos geht. Allerdings hab ich keine PDB-Files für SMFL und die will ich auch eigentlich gar nicht haben, da ich nicht unbedingt im SFML-Code debuggen will. Das nervige sind nun aber die ganzen LNK4099-Warnungen vom VS (übrigens noch 2008, sollte aber recht egal sein). Zu Urzeiten (VS6.0) gabs mal Linkeroptionen wie "/ignore:4099", die ja soweit ich weiß abgeschafft wurden. Im Normalfall würd ich Warnungen ja nicht ignorieren, aber in diesem speziellen Fall würde ich schon gern die Warnungen wegbekommen, weil ich mir halt sicher bin, dass es ok ist keine PDBs für SFML zu haben. Hat da jemand eine Idee? Ich würde es natürlich gern vermeiden Warnungen generell auszustellen oder gänzlich auf Debug-Information zu verzichten (für mein Programm selbst). Beides würde natürlich die Warnungen beseitigen, aber das ist ja logischerweise keine Alternative. ;)

Laut Internetrecherche gibt es wohl nicht viel Hoffnung. Alles was ich gefunden habe ist das "Patchen" der link.exe mit einem Hex-Editor. Aber auch das kann ja nicht wirklich eine gute Lösung sein. Das Problem besteht ja generell beim statischen Linken im Debug-Build. Vorallem wenn man weder Sourcen noch PDBs hat (ist hier natürlich nicht so).

Ich warte mal ab, vielleicht hat ja noch jemand einen Trick parat. Zur Not muss ich halt doch die PDBs bauen.
Ohne Input kein Output.
Benutzeravatar
dot
Establishment
Beiträge: 1734
Registriert: 06.03.2004, 18:10
Echter Name: Michael Kenzel
Kontaktdaten:

Re: [SFML] Linker-Warnungen mit statischem Linken

Beitrag von dot »

Ganz ehrlich? Ich würd einfach SFML selber builden, was vermutlich sowieso eine gute Idee wäre und dein Problem würde sich so nebenher erübrigen... ;)
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

Re: [SFML] Linker-Warnungen mit statischem Linken

Beitrag von BeRsErKeR »

Ja das hab ich auch vor, wenns nicht anders geht. Ich frage mich nur wie die armen Leute das machen, wenn sie weder Sourcen noch PDBs haben (z.B. bei einer 3rd-Party-Lib).
Ohne Input kein Output.
Benutzeravatar
Schrompf
Moderator
Beiträge: 4886
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas
Wohnort: Dresden
Kontaktdaten:

Re: [SFML] Linker-Warnungen mit statischem Linken

Beitrag von Schrompf »

Die armen Leute ignorieren die Warnung, glaube ich. Das Selberbauen ist schon die beste Lösung, solange die jeweilige Lib nicht so eine CMake - configure - irgendwas - Katastrophe ist. Und das Ganze ist natürlich ein weiteres schönes Argument, warum man sich von GPL / LGPL fernhalten sollte.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
joggel

Re: [SFML] Linker-Warnungen mit statischem Linken

Beitrag von joggel »

Hab gegen SFML nur dynamisch gelinkt. Und da lief alles Reibungslos...
Und SFML steht unter der zlib-Lizenz.
Und wieso soll man sich von LGPL vernhalten?
Benutzeravatar
Schrompf
Moderator
Beiträge: 4886
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas
Wohnort: Dresden
Kontaktdaten:

Re: [SFML] Linker-Warnungen mit statischem Linken

Beitrag von Schrompf »

Weil Du mit der LGPL zum dynamischen Linken gezwungen wirst. Und warum dynamisches Linken in den meisten Fällen die schlechtere Wahl ist, hatten wir ja schon diskutiert. In Kurzform:

- unnötige zusätzliche Datei neben der Exe
- jeder Funktionsaufruf in die DLL kostet Performance im Bereich einer virtuellen Methode
- Compiler kann nicht global optimieren
- Compiler kann unbenutzte Funktionen der Lib nicht entfernen
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

Re: [SFML] Linker-Warnungen mit statischem Linken

Beitrag von BeRsErKeR »

Schrompf hat geschrieben:Die armen Leute ignorieren die Warnung, glaube ich. Das Selberbauen ist schon die beste Lösung, solange die jeweilige Lib nicht so eine CMake - configure - irgendwas - Katastrophe ist. Und das Ganze ist natürlich ein weiteres schönes Argument, warum man sich von GPL / LGPL fernhalten sollte.
Naja Ignorieren ist leicht gesagt. Das sind ja nicht nur 1-2 Warnungen pro Lib, sondern mitunter hunderte. Das ist schon nervig und wichtige Warnungen gehen dabei unter.
Schrompf hat geschrieben:Die armen Leute ignorieren die Warnung, glaube ich. Das Selberbauen ist schon die beste Lösung, solange die jeweilige Lib nicht so eine CMake - configure - irgendwas - Katastrophe ist. Und das Ganze ist natürlich ein weiteres schönes Argument, warum man sich von GPL / LGPL fernhalten sollte.
Ich hab SFML noch nicht selbst gebaut aber es scheint schon CMake-Gefummel zu sein. Scheinbar unter Windows aber schon recht trivial und mit verständlicher Anleitung. Ich werds dann bei Zeiten mal ausprobieren.
Ohne Input kein Output.
Antworten