HELP GTK - exe portable

UnderFlow Messages postés 34 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 6 juin 2006 - 24 août 2005 à 10:36
UnderFlow Messages postés 34 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 6 juin 2006 - 25 août 2005 à 09:43
Bonjour à toutes et à tous,

Afin de développer très rapidement une interface graphique en C++, j'ai utilisé Glade (éditeur graphique) et GTK (bibliothèque graphique).
Mon ide est Devcpp 4.9.9.2.

De ce côté là, il n'y a aucun problème (du moins aucun qui ne ce soit avéré insurmontable) : l'interface graphique est ok et fonctionne très bien.

Voilà mon problème :
Je voudrais que l'exécutable de cette interface graphique soit complètement portable (uniquement dépendant de l'OS bien sûr).
Or il se trouve que lorsque j'essaie de la lancer sur un PC où Gtk n'est pas installée,
j'ai une erreur de dll manquante.

L'installation de Gtk s'avère nécessaire et ceci est très embêtant car je souhaiterais mettre cet exécutable sur un lecteur réseau afin qu'il soit
exécutable de n'importe quel endroit de ce réseau sans installation préalable.

Pour cela, j'ai déjà exploré 2 pistes, mais sans succès :

1) Inclure toutes les dll dans l'executable afin de n'avoir plus qu'un seul fichier indépendant.
Cette solution n'est peut être pas très propre mais elle offrirait une solution des plus plaisantes.
J'ai essayé d'utiliser l'option -static de gcc mais sans succès :-(.

2) Créer un dossier accompagnant l'exe et contenant toutes les dll gtk nécessaires.
Puis linker l'exe à ces dll.
Là encore, j'ai trouvé toutes les dll utilisées par mon interface grâce à dependency walker.
J'ai configuré Dev pr qu'il linke l'exe à ces dlls.
Cependant, là encore je rencontre un problème avec une dll que je n'arrive pas à l'inker correctement :
libatk1.0-0 (un truc co ça).

Voilà, pourriez vous s'il vous plait m'aider à résoudre ce problème avec l'une ou l'autre de ces solutions (ou une nvelle solution)
en m'indiquant comment je dois configurer le compilateur de devcpp ou les autres opérations à effectuer ?

Cela me serait vraiment utile et je remercie milles fois par avance celui ou celle qui essaiera de m'aider.

Merci.

3 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
24 août 2005 à 17:45
Tu fournis les DLL avec ton EXE tout simplement, c'est comme ca que ca marche
0
UnderFlow Messages postés 34 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 6 juin 2006
25 août 2005 à 08:44
Tu veux dire, en mettant toutes les DLL au niveau de l'EXE ?

Parce qu'il me fait qd même une erreur de DLL manquante alors qu'elle est bien là, c'est pour ça que je pensais que c'était un pb de linkage après la compil.

Bon, dans ce cas, ce que je vais faire là, c'est essayer de choper ttes les DLL de gtk et les mettre au niveau de l'exe.

Mais il n'y a pas une partie de la compilation qui consiste à lier les objects à l'exe ?
0
UnderFlow Messages postés 34 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 6 juin 2006
25 août 2005 à 09:43
En mettant ttes les DLL au niveau de l'EXE,
j'ai maintenant une runtime error :

Pango ERROR : file shape.c line 75 ...

Je vais chercher sous google pour voir si je trouve comment corriger ça,
mais en attendant si qq sait de quoi il s'agit,

merci pour son aide.
0
Rejoignez-nous