dll in exe einbinden

Verschiedenes zu Qt
Antworten
danibert
Beiträge: 20
Registriert: 19. April 2010 09:11

dll in exe einbinden

Beitrag von danibert »

Hallo zusammen,

ich habe gerade mit QT angefangen und schon taucht eine Frage zum Release eigener Programme auf.
Wenn ich ein Programm erstelle (mit Build-Konfiguration auf Release), erstellt QT im Release-Ordner die .exe-Datei. Wenn ich versuche, diese auszuführen, bekomme ich zunächst Fehlermeldungen wegen fehlender Dateien ( mingwm10.dll, libgcc_s_dw2-1.dll, QtCore4.dll und QtGui4.dll ). Sobald ich diese Dateien in das Verzeichnis der .exe kopiere, funktioniert alles.

Gibt es eine Möglichkeit, die .dll´s in die .exe mit einzubinden, so dass ich am Schluss nur noch eine Datei habe?

Vielen Dank schon mal im Voraus
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Das nennt sich "statisch linken" und ist speziell für Anfänger nicht wirklich leicht umzusetzen. Du musst nämlich den Qt-Sourcecode selber kompilieren. Und insbesondere wenn es an die ganzen Plugins geht ist das nicht mehr lustig.

Ich würd die Zeit am Anfang sinnvoll investieren und Qt programmieren lernen. Sonst vergeht dir die Lust, bevor du überhaupt angefangen hast ;)

Lies dir trotzdem mal folgende Seite durch:
http://qt.nokia.com/doc/4.6/deployment.html
danibert
Beiträge: 20
Registriert: 19. April 2010 09:11

Beitrag von danibert »

OK, danke für den Tipp. Eine Frage hierzu noch:
Kann ich meine Projekte vorerst dynamisch, aber später statisch linken, oder muss ich hierzu schon beim Programmieren etwas anders machen?
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

danibert hat geschrieben:OK, danke für den Tipp. Eine Frage hierzu noch:
Kann ich meine Projekte vorerst dynamisch, aber später statisch linken, oder muss ich hierzu schon beim Programmieren etwas anders machen?
Es macht beim Programmieren absolut keinen Unterschied!
danibert
Beiträge: 20
Registriert: 19. April 2010 09:11

Beitrag von danibert »

Darf ich denn die dll´s zusammen mit meinen Programmen verteilen? Ich nutze die kostenlose Version vn QT.
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

danibert hat geschrieben:Darf ich denn die dll´s zusammen mit meinen Programmen verteilen? Ich nutze die kostenlose Version vn QT.
Seit (glaub ich) Qt-4.6 ist Qt unter LGPL lizensiert. Da darfst du auch Closed-Source-Programme verteilen! Jedoch mit der Einschränkung dass der User einfach die Qt-libs austauschen kann. Und das geht nicht wirklich gut bei statischem Linken ;)
Antworten