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 :

zip et GTK : comment faire ?


Sujet :

GTK+ avec C & C++

  1. #21
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par troumad Voir le message
    J'avais déjà vu et oublié que j'avais vu ce tutoriel...
    Il devrait passer en article non ?
    Je te laisse juger. Pour moi il n'y a aucune contrainte.
    Il faut que j'ajoute des nouvelles fonctionnalités (libzip gère les archives protégées maintenant)

  2. #22
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    Citation Envoyé par _-Slash-_ Voir le message
    JIl faut que j'ajoute des nouvelles fonctionnalités (libzip gère les archives protégées maintenant)

  3. #23
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    @liberforce : en cherchant ( http://lynix.digitalpulsesoftware.co...ack-mingw-get/ ), je suis en train de voir que ce sont des commandes pour Windows... Il fallait le dire plus fort. C'est trop like-linux
    En plus avec les / comme séparateurs de répertoire, j'aurais parié que ce n'était pas windows !

    ÉDIT : Euh... Je ne pense pas que ce soit pour Windows finalement... Le configure est un script Linux !

    Pour mes recherches sous windows, j'arrive à trouver ceci sur libzip :
    Bon au final pour ceux qui auraient le même problème que moi, allez voir du cote de la zlib, c'est sympa et ca marche sous Windows sans se prendre la tête
    Là... Pour le peu que je trouve, j'ai l'impression que ça doit être encore lus compliqué à utiliser !

    Donc, si je travaille avec libzip, il va falloir que je fasse une cross-compilation selon les recommandations de liberforce ! Mais, je n'ai jamais essayé les cross-compilations !

  4. #24
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    @liberforce : je n'arrive pas à comprendre si ton aide est faite pour installer la bibliothèque sous windows ou sous Linux...
    Avec ton cmake, j'arrive à faire un exécutable pour Linux...

  5. #25
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Ce n'est absolument pas de la cross-compilation. Cross-compiler, ce serait compiler sous Linux pour générer un exécutable Windows par exemple.

    MinGW, c'est un environnement GNU pour Windows. Cela permet entre autres de compiler nativement (c'est à dire qu'il n'y a pas d'émulation) sous Windows avec GCC. Le shell MSYS permet également de remplacer le shell Windows (cmd.exe) qui est trop limité. C'est lui qui va faire la conversion des chemins UNIX en chemins Windows. Par exemple pour rentrer dans un dossier, je peux taper façon Windows:
    ou bien façon UNIX:
    Dans MinGW, tu auras aussi bash, ce qui te permet de lancer les scripts configure, etc. Toutes les commandes que j'ai données plus haut on été exécutée sous Windows. Et CMake est multi-plateforme, tu peux donc générer le binaire pour Linux sous Linux, et pour Windows sous Windows, sans modification, et sans difficulté.

  6. #26
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    OK ! Que de choses que je ne connais pas Mais je j'apprends

    J'essaie d'installer msys...J'ai pleins de choses qui s'installent comme msysCORE. Mais, après, je ne sais où le trouver pour l'exécuter !

    Où mingw-get installe t'il par défaut tous ces fichiers ?

    ÉDIT : j'ai finalement trouvé sh.exe ! Je testerais plus tard !

  7. #27
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Ce n'est oas sh.exe, mais msys.bat qu'il faut lancer. Il se trouve là:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    %MINGW_INSTALL_DIR%\msys\msys.bat
    Par exemple, si tu as installé mingw dans c:\mingw, alors tu lances msys en exécutant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\mingw\msys\1.0\msys.bat
    Le mieux est de te faire un raccourci dessus. Je te conseille ensuite dans les propriétés du raccourci de rajouter --rxvt pour utiliser le terminal rxvt plutôt que cmd.exe. Il faut ensuite s'assurer que le répertoire courant du raccourci est le bon.


  8. #28
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut

    J'avance donc petit à petit !

    Je faisais les installations sous administrateur... Je me demande si c'est utile et même je me demande si c'est conseillé !
    Enfin, je continue...

    http://www.sqlpac.com/referentiel/do...ndows.htm#L196 est pas mal non plus... Maintenant, je peux avoir vim

  9. #29
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Pour la liste des paquetages:
    Si tu veux uniquement le nom des paquetages:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mingw-get list | egrep "^Package"
    Attention, pour les exacutables, tu peux installer indifféremment des packages mingw32-* ou msys-*. En revanche, pour les bibliothèques, n'utilise que mingw32-*, sinon les exécutables que tu généreras et dépendants de ces bibliothèques seront aussi dépendants de MSYS.

  10. #30
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    Je pense que je vais tout desinstaller et tout installer proprement.

    Je remarque que les installations se font dans le répertoire où j'ai mis la première fois mingw-get . J'ai bricolé des choses car il ne trouvait le compilateur => j'ai vu que je ne l'avais pas installé
    Donc, au total, je ne pense pas avoir arrangé les affaires Mais, c'est en cherchant qu'on apprend ! Aujourd'hui, je découvre mingw-get et msys sous windows. Ce sont des prérequis pour comprendre tes explications sur l'installation de libzip sous Windows !

    J'ai du boulot, je reviens plus tard !

  11. #31
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Je te conseille de lire le tutoriel officiel:
    http://mingw.org/wiki/Getting_Started

  12. #32
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    Merci ! Je viens donc de refaire une nouvelle installation


    Je regarde les sources que j'ai vues cet après midi : http://lynix.digitalpulsesoftware.co...ack-mingw-get/
    Cette source ne parle que de l'installation en ligne de commande Mais, elle donne le lien entre Code::Block et min-gw.

    Comme mon windows est sous VM... Le configure a été très lent, le make semble tout aussi lent et j'attends pour le make install... Mais contrairement à mes premiers tests de début d'après-midi, le configure passe

  13. #33
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    J'ai des problèmes au make...
    Le premier, c'est qu'il ne trouve pas addçdir.exe avec une série d'erreur à la compilation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    error: expected ',' or '\' before 'c'
    error : stray '\' inprogramm
    Citation Envoyé par liberforce Voir le message
    libzip a le bon goût d'être fourni avec un fichier .pc qui sert à pkg-config. pkg-config est (entre autres) fourni avec gtk, il suffit juste de s'assurer de le rajouter dans le PATH s'il n'y est pas déjà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PATH="$PATH:/opt/gtk-2.22/bin"
    Euh... C'est quoi ce répertoire /opt/gtk-2.22/bin ? Je ne l'ai pas ! Il faut aussi installer à la main gtk ? En plus la version 2.22 est trop vieille pour faire du compatible gtk3 !

  14. #34
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    Qui peut m'aider pour mon erreur ?

    Elle est au niveau du make. La dernière ligne avant le problème et le début de la suite ( copie à la main de l'écran ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    /bin/sh ../libtool --tag=CC --mode=link gcc -g -02 -o zipcmp.exe zipcmp-zipcmp.o ../lib/libzip.la -lz
    libtool: link: gcc -g -02 -0 .libs/zipcmp.exe zipcmp-zipcmp.o ../lib/.libs/libzip.dll.a -lz -L/opt/libzip-0.10/lib
    ./.libs/lt-zip.c:288:35: error : expected ',' or ';' before 'c'
    ./.libs/lt-zip.c:288:35: error : stray '\' in program
    Je pense que ce problème venait de la présence d'espace dans le chemin.

    J'ai changé le chemin et j'ai d'autres erreurs mais, plus tard il me semble

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    /bin/sh: mdoc2man: command not found
    make[2]: *** [zip_fclose.man] Error 127
    make[2]: Leaving directory `/c/clizip-0.10/man'
    make[1]: *** [all-recurcive] Error 1
    make[1]: Leaving directory `/c/clizip-0.10'
    make: *** [all] Error 2
    J'ai vu :
    Citation Envoyé par liberforce Voir le message
    Une fois cela fait, on peut vérifier si pkg-config est capable de retrouver le fichier libzip.pc qu'on a installé en même temps libzip. La commande suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pkg-config --list-all | grep zip
    J'ai donc voulu tester...
    Et bien, pkg-config n'est pas reconnu. Je sens comme un problème

  15. #35
    Membre actif Avatar de Gamall
    Profil pro
    Étudiant ENSEA
    Inscrit en
    Août 2009
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant ENSEA

    Informations forums :
    Inscription : Août 2009
    Messages : 252
    Points : 221
    Points
    221
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    /bin/sh ../libtool --tag=CC --mode=link gcc -g -02 -o zipcmp.exe zipcmp-zipcmp.o ../lib/libzip.la -lz
    libtool: link: gcc -g -02 -0 .libs/zipcmp.exe zipcmp-zipcmp.o ../lib/.libs/libzip.dll.a -lz -L/opt/libzip-0.10/lib
    ./.libs/lt-zip.c:288:35: error : expected ',' or ';' before 'c'
    ./.libs/lt-zip.c:288:35: error : stray '\' in program
    Lorsque tu renseignes un chemin en dur dans ton code source, tu dois échapper chaque caractère spécial par un backslash. Sous Windows on utilise aussi le backslash pour séparer les répertoires dans un chemin, et il se trouve que backslash est aussi un caractère spécial. Donc il faut doubler les backslash pour que le compilateur sache bien que '\' est bien un caractère comme un autre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    /bin/sh: mdoc2man: command not found
    make[2]: *** [zip_fclose.man] Error 127
    make[2]: Leaving directory `/c/clizip-0.10/man'
    make[1]: *** [all-recurcive] Error 1
    make[1]: Leaving directory `/c/clizip-0.10'
    make: *** [all] Error 2
    Lorsque tu fais ton ./configure, il y a pas un --enable-mdocquelquechose=no que tu pourrait rajouter ? Tu peux vérifier ça avec ./configure --help.

  16. #36
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    Pour la première remarque, c'est pour ça que j'ai pris un chemin sans espace ni autres caractères originaux dedans.


    Le problème, c'est que je récupère des choses toutes prêtes qui devraient marcher non ?

    Le --help me sort bien des possibilités de --enable . il y a fast install, static, shared et dependency-tracking .

  17. #37
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    Citation Envoyé par _-Slash-_ Voir le message
    Le lien n'existe plus C'est ça peut-être : http://slash.developpez.com/tutoriel...sation-libzip/ ?

  18. #38
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    Je suis allé bien plus loin ! Mais, j'ai encore un problème :
    Citation Envoyé par liberforce Voir le message
    Une fois cela fait, on peut vérifier si pkg-config est capable de retrouver le fichier libzip.pc qu'on a installé en même temps libzip. La commande suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pkg-config --list-all | grep zip
    ... devrait retourner:
    Il ne trouve pas la commande pkg-config !

    Sans compter que les copier/coller de firefox vers le terminal mingw32 ne marchent pas et que je dois tout taper à la main

  19. #39
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Citation Envoyé par troumad Voir le message
    Je suis allé bien plus loin ! Mais, j'ai encore un problème :Il ne trouve pas la commande pkg-config !
    C'est un peu logique si tu ne l'as pas mise dans ton PATH...
    pkg-config se trouve là où tu a installé GTK. Chez moi, il est là: /opt/gtk-2.24.5/bin/pkg-config
    Il te faut donc éditer par exemple ton fichier $HOME/.profile pour ajouter le chemin où il se trouve:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    export PATH="$PATH:/opt/gtk-2.24.5/bin"
    Tu fermes ta console, tu la relances, et un
    devrait te renvoyer quelque chose du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /opt/gtk-2.24.5/bin/pkg-config.exe
    Citation Envoyé par troumad Voir le message
    Sans compter que les copier/coller de firefox vers le terminal mingw32 ne marchent pas et que je dois tout taper à la main
    C'est parce qu'il faut faire un copier/coller UNIX (car Ctrl+V est un caractère d'échappement dans un shell). Tu sélectionnes le texte dans firefox, tu reviens dans ton terminal, et tu cliques sur la molette de ta souris. Tu peux remplacer le clic molette par la combinaison de touches Shift + Insert.

  20. #40
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 602
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 602
    Points : 7 837
    Points
    7 837
    Par défaut
    Bon... Je n'ai pas encore installé gtk... Je comptais passer à gtk3 après avoir travaillé libzip.
    Donc, il faut le faire dès maintenant. Je vais m'y mettre.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. comment faire une condition ou une instruction avec gtk
    Par Invité dans le forum GTK+ avec C & C++
    Réponses: 1
    Dernier message: 31/05/2009, 17h06
  2. GtK StatusIcon avec menu OU comment faire un menu en gtk
    Par lauben dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 03/12/2008, 16h38
  3. [GTK] Comment faire défiler du texte dans un label ou autre container
    Par dupuyyann dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 25/02/2008, 00h25
  4. Comment faire pour créer un bitmap
    Par GliGli dans le forum C++Builder
    Réponses: 2
    Dernier message: 24/04/2002, 16h41

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