Početak›Forumi›Linuks›Programiranje›statičko linkovanje za Qt
- This topic has 3 odgovora, 3 glasa, and was last updated 16 years ranije by djvujke.
-
AutorČlanci
-
26. mart 2008. u 11:37 pm #9941burgaUčesnik
Kako da izmenim Makefile za Qt da bih dobio uzvršnu datoteku koja je statički linkovana (ma koliko velika bila). Hoću da kod koji kompajliram (pod winom) mogu da dam nekome kao jedan jedini .exe bez potrebe da taj neko ima instaliran Qt.
I drugo, instalirao sam minGW u linuxu, kako da pomoću njega pravim izvršne datoteke za win?
Prilaže .pro i Makefile jednog projekta (zapravo njegovog parčeta) na kome radim.
27. mart 2008. u 11:18 am #68519djvujkeUčesnikcd C:pathtoQt
configure -staticili jos bolje procitaj ovo http://doc.trolltech.com./4.1/deployment-windows.html#static-linking jer ja neumem bas da objasnjavam
27. mart 2008. u 12:05 pm #68520dukenukem_4dUčesniku man:ld O0
-static
Do not link against shared libraries. This is only meaningful on platforms for which shared libraries are supported. The different variants of this option are for compatibility with various systems. You may use this option multiple times on the command line: it affects library searching for -l options which follow it. This option also implies –unresolved-symbols=report-all. This option can be used with -shared. Doing so means that a shared library is being created but that all of the library’s external references must be resolved by pulling in entries from static libraries.Note—if the linker is being invoked indirectly, via a compiler driver (e.g. gcc) then all the linker command line options should be prefixed by -Wl, (or whatever is appropriate for the particular compiler driver) like this:
gcc -Wl,–startgroup foo.o bar.o -Wl,–endgroup
kada bi se dodalo u makefile u liniji
LFLAGS = -Wl,-rpath,/usr/local/Trolltech/Qt-4.3.3/lib
ovo
-Wl ,-static ili samo -static
ili nešto slično?EDIT: u vezi ovoga ,video sam prog. koji je linkovan samo na ove dve (recimo)
QTCORE4.DLL QTGUI4.DLL( ili je bio onaj stariji qt). s tim da se nalaze u istom direktoriju. ne znam kako do ovoga da se dodje.28. mart 2008. u 9:08 am #68521djvujkeUčesnikkoliko sam ja skapirao … qt biblioteke moraju se statici kompajlirati, da bi mogao da ih koristis …
i dalje mozes shared biblioteke da koristis, a ako hoces staticke pri kompajliranju programa stavis -static….pa svi su program linkovani na qtgu4i.dll jer on obezbedjuje graficke elemente tvom programmu
qtcore4.dll isto tako obezbedjuje neke osnovne stvari…(ne pitaj me koje su … ne bih umeo da ti objasnim)pise sve na onom linku sto sam ostavio..pa probaj
-
AutorČlanci
Moraš biti prijavljen da bi postavio komentar u ovoj temi.