Seite 1 von 1
Qt-Programm richtig linken
Verfasst: 13. Mai 2007 11:49
von Karldin Shinowa
Ich möchte ein selbstgeschriebenes Qt-Programm gerne auf einem anderen Computer ausführen(Copy, Paste). Allerdings fehlen ihm hier einige dlls. Gibt es eine gute Möglichkeit dass was er braucht mitzulinken. das große problem ist ja dass er auf verschiedenen Computern plötzlich nach mehr oder weniger dlls schreit.
Er brauchte zuerst die QtCore4, QtGui4 und dass exe.manifest. Auf nem anderen Computer schreit er jetzt nach der MSVCP80.dll(das is doch Visual Studio? warum braucht er die). Habe einfach alles im VS mit Release gebuildet...
Mfg auch wenns sicher ne dumme frage is
Verfasst: 13. Mai 2007 13:18
von Christian81
Forum-Suche nach 'statisch linken' bitte
Verfasst: 17. Mai 2007 09:40
von Karldin Shinowa
Gut hab ich versucht doch werd nicht ganz schlau draus. So wie ich das sehe werde ich QtCore4.dll QtGui.dll nicht los die müssen einfach im Ordner liegen? Aber wie linke ich in mein Programm die ganzen VS Dll rein. Dass hab ich nicht wirklich gefunden bzw. nicht verstanden.
Seh ich dass prinzipiell richtig und wie mach ich das jetzt genau?
Verfasst: 17. Mai 2007 18:34
von ChMaster
Servus Karldin Shinowa,
um die MSVCP80.dll brauchst du dir keine gedanken machen. Diese
Datei ist im .Net Framework 2.0 enthalten und dass müsste jeder
Benutzer auf dieser Welt installiert haben.
Das einzige was du mitliefern solltest sind die Qt4 Dateien die dein
Programm benötigt und evtl. die Manifest deines Programmes und die
von der MSVCP80.dll.
Die Qt4 Dateien die dein Programm benötigt können in dem Ordner liegen
wo auch die Exe Datei liegt oder auch im Systemverzeichnis von Windows.
Oder such mal in diesem Forum nach MSVCP80. Das müsste dir weiterhelfen.
Verfasst: 18. Mai 2007 16:55
von Christian81
Verfasst: 19. Mai 2007 09:30
von patrik08
das geht vielleicht mit qt4.1 ...
Nun ist
http://wiki.qtcentre.org/index.php?titl ... on_Windows
http://wiki.qtcentre.org/index.php?titl ... n_Mac_OS_X
http://wiki.qtcentre.org/index.php?titl ... t_on_Linux
Als resultat hat man grosse exe bezuglich. grosse binary file..
Wichtig zu begreifen dass exe dll benotigt..
dies findet man raus mit
http://www.dependencywalker.com/
oder aus der Microsoft Sekte
http://www.microsoft.com/technet/sysint ... lorer.mspx
es ist doch nicht kompliziert ein installer zu machen mit
http://www.jrsoftware.org/isinfo.php wenn man begreift was hinein muss.
Imo: Warum Sekte? Man ist doch immer Abhängig vom naechste update und antivirus sonst lauft nichts , und man bringt dort viel Geld hin, ausser die piraten die brauchen nur peer to peer programme um zu berauben. Unvorstellbar wenn die auch noch milliarden hin bringen. Ganz kurz mann iist niee frei wie einen mac oder linux oder andere.. man glaubt kaum wie viele os dass es gibt
http://dmoz.org/Computers/Software/Operating_Systems/
Verfasst: 19. Mai 2007 10:28
von Christian81
Wenn man keine Ahnung hat sollte man einfach mal ruhig halten!!
Das geht genauso mit Qt4.2/3 und ma bekommt auch kein riesen Executable. aber naja Du scheinst ja von allem Ahnung zu haben

Verfasst: 19. Mai 2007 10:43
von patrik08
Dass ist einfach tatsache.. Auf mac wenn man universal Buildet + static .. sprich fuer zwei prozessoren tipen !!! ... kann eine kleine applikation schell 30MB bekommen ... und beim start waren es vielleicht 3 oder 4 MB.. obwohl beim dmg alles auf 10MB gepresst ist...
Bei window hat das gewicht vom Installer dll resource + exe .. ecc.. wiel weniger MB als eine static gebuildete exe....
Der QT designer designer.exe auf static build ist 12.5 MB normal nur 0.75 MB... ich sehe doch wass passiert ... ich habe doch 4 versionen von QT auf meinem rechner... einer ist eben static...
Der einzige vorteil der static build ... ist dass es portabel ist in einen USB stick oder cd ....
Verfasst: 21. Mai 2007 07:28
von macman
ChMaster hat geschrieben:um die MSVCP80.dll brauchst du dir keine gedanken machen. Diese Datei ist im .Net Framework 2.0 enthalten und dass müsste jeder Benutzer auf dieser Welt installiert haben.

Weia, man liefert grundsätzlich alles mit. Gehe niemals davon aus, das der Kunde irgendwas schon hat.