Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

linkare staticamente

2 views
Skip to first unread message

Foley

unread,
Nov 15, 2009, 9:30:06 AM11/15/09
to
ciao a tutti, non ho esperienza riguardo i compilatori, ho sempre usato gcc
con code blocks sotto windows.
vorrei rendere i miei programmi fatti con gtk2 compatibili anche in altri pc
senza gtk. come devo fare per linkare staticamente le librerie che uso?
grazie mille
ciao


michelangelo giacomelli

unread,
Nov 19, 2009, 3:45:21 AM11/19/09
to
Foley ha scritto:
non tutte le librerie possono essere linkate staticamente, le gtk sono
fatte per essere linkate dinamicamente.

Foley

unread,
Nov 19, 2009, 7:01:26 AM11/19/09
to

"michelangelo giacomelli" <michel...@blu.it> ha scritto nel messaggio
news:BA7Nm.95936$1s6....@twister2.libero.it...


grazie mille, ma non esiste altro modo per poter rendere compatibile un
eseguibile, che ha bisogno delle gtk, in altri computer? ovviamente senza
instalare il kit gtk su altri computer.
grazie mille
ciao


michelangelo giacomelli

unread,
Nov 19, 2009, 8:01:39 AM11/19/09
to

>
>
> grazie mille, ma non esiste altro modo per poter rendere compatibile un
> eseguibile, che ha bisogno delle gtk, in altri computer? ovviamente senza
> instalare il kit gtk su altri computer.
> grazie mille
> ciao
>
>

no mi spiace, inoltre l'eseguibile sarebbe enorme visto che glib, gdk,
pango, etc... gtk con le relative dipendenze ᅵ una decina di mega.
Se hai l'esigenza di distribuire un eseguibile piccolo e statico
utilizza una libreria come fltk oppure direttamente le api native di
windows.
Altrimenti devi fare come gimp distribuisci un pacchetto eseguibile che
installa le librerie gtk e uno che installa il tuo software, non ci sono
molte alternative.

Foley

unread,
Nov 20, 2009, 5:35:20 AM11/20/09
to

"michelangelo giacomelli" <michel...@blu.it> ha scritto nel messaggio
news:TkbNm.96032$1s6....@twister2.libero.it...

>
>>
>>
>> grazie mille, ma non esiste altro modo per poter rendere compatibile un
>> eseguibile, che ha bisogno delle gtk, in altri computer? ovviamente senza
>> instalare il kit gtk su altri computer.
>> grazie mille
>> ciao
>>
>>
>
> no mi spiace, inoltre l'eseguibile sarebbe enorme visto che glib, gdk,
> pango, etc... gtk con le relative dipendenze � una decina di mega.

> Se hai l'esigenza di distribuire un eseguibile piccolo e statico
> utilizza una libreria come fltk oppure direttamente le api native di
> windows.
> Altrimenti devi fare come gimp distribuisci un pacchetto eseguibile che
> installa le librerie gtk e uno che installa il tuo software, non ci sono
> molte alternative.


ok, provo a vedere fltk, pero continuo a non capire quale settaggio devo
fare per dire a gcc tramite code blocks che lo voglio statico. ho letto che
con fltk linka automaticamente in maniera statica, confermi?
inoltre vorrei chiederti se fltk si puo usare anche con il c, in rete ho
trovato solo per il c++.
grazie ancora
ciao ciao


michelangelo giacomelli

unread,
Nov 20, 2009, 6:41:25 AM11/20/09
to
Foley ha scritto:

> ok, provo a vedere fltk, pero continuo a non capire quale settaggio devo
> fare per dire a gcc tramite code blocks che lo voglio statico. ho letto che
> con fltk linka automaticamente in maniera statica, confermi?
> inoltre vorrei chiederti se fltk si puo usare anche con il c, in rete ho
> trovato solo per il c++.
> grazie ancora
> ciao ciao
>
>

fltk non ha binding per il C mi spiace, devi usare per forza il C++.
(non che sia un male pensa solo a stringhe a template)
Il tamplate di codeblocks per fltk fa giᅵ la compilazione statica quindi
stai tranquillo.
Ma se vuoi usare le gtk non puoi utilizzare un pacchetto che fa
l'installer e installa pure le dll di gtk e buona notte?

Foley

unread,
Nov 20, 2009, 8:22:34 AM11/20/09
to
> fltk non ha binding per il C mi spiace, devi usare per forza il C++.

peccato, non sono pratico nel C++, ho sempre usato il C. comunque credo che
sbattero la testa anche sul C++ appena ne avro il tempo.

> Ma se vuoi usare le gtk non puoi utilizzare un pacchetto che fa
> l'installer e installa pure le dll di gtk e buona notte?

direi di si, solo che � la prima volta che programmo usando librerie diverse
dalle standard, e sono un po sperduto. come si fa per creare un pacchetto di
installazione? ora cerco un po su google, se hai della documentazione a
riguardo fammi sapere.
scusate se ho postato qui e ora sono un po OT riguardo il c...grazie ancora
ciao


michelangelo giacomelli

unread,
Nov 20, 2009, 8:26:21 AM11/20/09
to
Foley ha scritto:

>> fltk non ha binding per il C mi spiace, devi usare per forza il C++.
>
> peccato, non sono pratico nel C++, ho sempre usato il C. comunque credo che
> sbattero la testa anche sul C++ appena ne avro il tempo.
>
>> Ma se vuoi usare le gtk non puoi utilizzare un pacchetto che fa
>> l'installer e installa pure le dll di gtk e buona notte?
>
> direi di si, solo che ᅵ la prima volta che programmo usando librerie diverse
> dalle standard, e sono un po sperduto. come si fa per creare un pacchetto di
> installazione? ora cerco un po su google, se hai della documentazione a
> riguardo fammi sapere.
> scusate se ho postato qui e ora sono un po OT riguardo il c...grazie ancora
> ciao
>
>
mah sinceramente il modo piᅵ semplice sotto windows ᅵ:
* fai una directory
* ci butti il tuo .exe
* ci butti le dll che necessitano all'applicativo
* prendi il winrar e ci fai un archivio autoextraente :) mi pare di
ricordare che ci sia pure la possibilitᅵ quando scompatta di creare un
link sul desktop ad un eseguibile.
oppure al posto del winrar utilizzi un creatore di setup tipo quello di
nullsoft (tanto per restare nell'opensource)
http://nsis.sourceforge.net/Main_Page

Foley

unread,
Nov 20, 2009, 12:59:16 PM11/20/09
to
> mah sinceramente il modo pi� semplice sotto windows �:

> * fai una directory
> * ci butti il tuo .exe
> * ci butti le dll che necessitano all'applicativo
> * prendi il winrar e ci fai un archivio autoextraente :) mi pare di
> ricordare che ci sia pure la possibilit� quando scompatta di creare un

> link sul desktop ad un eseguibile.
> oppure al posto del winrar utilizzi un creatore di setup tipo quello di
> nullsoft (tanto per restare nell'opensource)
> http://nsis.sourceforge.net/Main_Page


perfetto, non pensavo fosse tanto semplice. non so perche ma pensavo di
dover scrivere del codice extra per farlo. comunque su google ho trovato
parecchi software e modalita. grazie mille.
approfitto della tua pazienza ancora un po :-)
allora ho un paio di dubbi sulle librerie.
il mio codice inizia con
#include <gtk/gtk.h> questo vuol dire che gli devo allegare tutte le
librerie del toolkit o allego solo quelle che effettivamente
uso(glib,gobject e gtk-win32)?
nella directory dove ho installato gtk, non ho dll, ho solo file *.lib e *.a
quali devo allegare all'eseguibile? inoltre le librerie devo farle estrarre
in un percorso specifico?
fammi sapere ciao


michelangelo giacomelli

unread,
Nov 23, 2009, 4:21:55 AM11/23/09
to

> perfetto, non pensavo fosse tanto semplice. non so perche ma pensavo di
> dover scrivere del codice extra per farlo. comunque su google ho trovato
> parecchi software e modalita. grazie mille.
> approfitto della tua pazienza ancora un po :-)
> allora ho un paio di dubbi sulle librerie.
> il mio codice inizia con
> #include <gtk/gtk.h> questo vuol dire che gli devo allegare tutte le
> librerie del toolkit o allego solo quelle che effettivamente
> uso(glib,gobject e gtk-win32)?
> nella directory dove ho installato gtk, non ho dll, ho solo file *.lib e *.a
> quali devo allegare all'eseguibile? inoltre le librerie devo farle estrarre
> in un percorso specifico?
> fammi sapere ciao
>
>
no...
usi un tools come dependency walker che aperto un eseguibile di dice a
quali librerie dinamiche ᅵ linkato e aggiungi quelle dll
http://www.dependencywalker.com/

micheg

non te la prendere comunque alle volte il deploy ᅵ una parte complessa..

0 new messages