IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

Quelles sont les dépendances GTK+ sous Linux ?


Sujet :

GTK+ avec C & C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut Quelles sont les dépendances GTK+ sous Linux ?
    Bonjour,

    J'aimerais savoir quelles sont les dépendances de GTK+ sous Linux. Sous windows, c'était facile. J'incluais les .dll, et les librairies de chaque composant de GTK+.
    Mais les .dll sous Linux...

    Est-ce que quelqu'un saurait ce que je dois ajouter dans le dossier de mon programme afin qu'il soit complètement stand alone sous Linux ?

    Merci d'avance

  2. #2
    Membre expérimenté

    Inscrit en
    Mai 2005
    Messages
    132
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 132
    Par défaut
    Salut, j'ajoute dans mon makefile


    SEARCHDIRS := `pkg-config --cflags gtk+-2.0` ...etc

    DEPENDFLAGS := -g -Wall -Werror ${SEARCHDIRS}


    La partie `pkg-config --cflags gtk+-2.0` fait tout. Fredy

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut
    C'est pas vraiment c'que j'demandais...
    C'que j'aimerais savoir, c'est quoi mettre dans mon dossier, pour que le programme puisse se lancer sur un Linux qui n'a pas GTK+ installé.

    Merci d'avance

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    C'est pas trop la philosophie linux... En général, tu fais un package qui contient uniquement ton programme et dans ton package tu indiques ce dont tu as besoin comme dépendances. Ensuite, le gestionnaire de paquets de ta distribution se débrouille pour installer ce qui est nécessaire.
    Je pense que ce que tu recherches, c'est des outils du type http://autopackage.org/ ou http://klik.atekon.de/wiki/index.php/What_is_klik

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut
    Ouais, j'comprends bien, mais là il s'agit de faire tourner un programme sur des vieilles machines sans connexion internet...

    Sous Windows, j'ai inclu les .dll dans mon dossier ainsi que les librairies nécessaires.
    J'aimerais juste savoir c'que j'dois inclure sous Linux comme fichier .so et autres...

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    Bah tu recuperes les paquets avec toutes les dependances, tu fais un paquet de ton appli, et tu deploies tout ca proprement sur les vieilles machines ?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut
    Pourrais-tu avoir l'amabilité de me montrer comment je dois les disposer pour que ça marche ?

    J'ai mon dossier forum, qui est la racine du programme (CAD ./ ), dedans j'ai mon fichier binaire ./forum ainsi que les dossiers et fichiers (gtkrc et autres) accompagnant le programme.

    Maintenant, dans un dossier séparé, j'ai tout ça :



    La question à 1 Million, c'est : comment je décompresse et dispose tout ça dans mon dossier ./ pour que ça marche sous Linux ? ^^
    (évidemment, je compilerai le code sous Linux )

    Merci d'avance (Et merci beaucoup si t'y arrives ^^)

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut
    Ça me surprend que la chose soit aussi compliquée...
    Pour autant que je sache, Linux >>> Windows non ?
    Alors comment se fait-il que rendre une application GTK+ totalement indépendante soit aussi facile sous Windows alors que ça semble impossible sous Linux ?
    Il doit bien y avoir un moyen quand même...

  9. #9
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    Citation Envoyé par Kicker Voir le message
    Pour autant que je sache, Linux >>> Windows non ?
    Si tu le dis...
    Sous linux, t'as des gestionnaire de paquets très puissant, chose que tu n'as pas sous windows. C'est pourquoi sous windows tu cherches à recourir à des bidouilles dégueux pour que ton appli soit "indépendante du système". Sous linux, t'explique juste au gestionnaire de paquet ce dont tu as besoin pour ton appli, et tu ne t'amuses pas à chercher à installer 50 fois la même lib pour avoir une appli "indépendante du système". Pour ça, faut commencer par savoir comment installer un paquet sur ta distrib cible...

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut
    D'accord, alors comment je peux faire pour que GTK+ s'installe tout seul sur une vieille machine Linux sans connexion au net ?
    Je sais que j'me comporte comme quelqu'un d'impatient et qui veut pas comprendre le pourquoi du comment, seulement là j'suis à la bourre sur la réalisation de mon projet que j'dois rendre la semaine prochaine, et il tourne pas sur les machines de la fac.

    Tout c'que j'demande, c'est un moyen rapide et efficace de faire tourner mon programme sur une machine qui n'a pas GTK+, ou qui a une version antérieure à 2.8...

    J'suis en galère et j'ai besoin d'une solution simple et rapide.
    klik a l'air d'être la solution mais j'comprends strictement rien à son fonctionnement, et comme tu l'as deviné, je ne suis pas vraiment un fan de Linux.
    Si j'avais plus de temps, je chercherais à comprendre comment ça fonctionne mais c'est malheureusement un luxe que je n'ai pas.

    Donc si quelqu'un pouvait être assez généreux pour m'expliquer en détail et pas à pas ce que je dois faire pour que klik marche et installe tout seul GTK+ sur la machine de la fac (ce qui a l'air d'être sa fonction), je lui en serait éternellement reconnaissant !

    Merci d'avance

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 172
    Par défaut
    Bon, à c'que j'ai compris, je peux trouver des .so en allant chercher sur rpmfind.net
    Mais c'est un véritable bazar, j'y comprends que dalle... Quelqu'un s'y connait là dessus ? Et saurait à tout hasard ce que je suis sensé prendre pour rassembler toutes les dépendances de mon programme ?
    J'ai beaucoup de mal à me repérer sur ce site

    Merci d'avance

  12. #12
    Membre éclairé
    Inscrit en
    Août 2005
    Messages
    89
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 89
    Par défaut
    Tu peux tout compiler statiquement, ça va faire un gros exécutable, mais tu n'auras pas besoin d'avoir les .so
    Tu compiles comment ? Je suis pas un spécialiste, mais je crois que l'option -static passée en plus à gcc devrait suffir.
    Enfin, pour ça, il faut que les bibliothèques que tu as utilisé le permette (il faut les fichiers .a) Par exemple, regarde s'il y a /usr/lib/libgtk.so et /usr/lib/libgtk.a sur ta machine).
    Donc si ça marche pas, tu peux mettre les .so dans le même répertoire que l'exécutable comme sous win$, et ensuite configurer la variable LD_LIBRARY_PATH pour qu'elle pointe vers le répertoire courant, '.'.


    Edit: si tu veux connaître les dépendances de ton exécutable, tape : ldd ton_executable dans un terminal.

Discussions similaires

  1. Quelles sont les tendances sous .NET ?
    Par Louis-Guillaume Morand dans le forum Général Dotnet
    Réponses: 23
    Dernier message: 25/11/2008, 12h16
  2. Quels sont les fichiers logs les plus pertinents sous Linux/Unix?
    Par 3wicha dans le forum Administration système
    Réponses: 2
    Dernier message: 04/06/2007, 22h14
  3. Quelles sont les distibutions avec le kernel 2.4.x.x?
    Par barucca dans le forum Administration système
    Réponses: 7
    Dernier message: 01/04/2004, 15h44
  4. [CR][Jetform] Quelles sont les différences ?
    Par littlecow dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 23/07/2002, 11h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo