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

Rust Discussion :

cross compilation -- from linux to windows [GTK]


Sujet :

Rust

  1. #1
    Membre expérimenté

    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2012
    Messages
    329
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2012
    Messages : 329
    Par défaut cross compilation -- from linux to windows [GTK]
    Bonjour, j'essaye de cross compiler de linux vers windows.
    Tous les autres projets n'ont posé aucun soucis, et je me retrouve avec un projet GTK qui, comme en C, pose un soucis en cross-compilation vers windows.

    The system library `gobject-2.0` required by crate `gobject-sys` was not found.
    The file `gobject-2.0.pc` needs to be installed and the PKG_CONFIG_PATH environment variable must contain its parent directory.
    The PKG_CONFIG_PATH environment variable is not set.

    HINT: if you have installed the library, try setting PKG_CONFIG_PATH to the directory containing `gobject-2.0.pc`.
    Je pensais que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #! /bin/bash
    2 export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib64/pkgconfig
    3 cross run --target x86_64-pc-windows-gnu
    ...serait suffisant mais PKG_CONFIG_PATH ne prends jamais de valeur, comme si export ne fonctionnait pas :{

    Question:
    Comment faire pour que j'aie une chance que ça compile ?

  2. #2
    Membre Expert
    Avatar de Pyramidev
    Homme Profil pro
    Tech Lead
    Inscrit en
    Avril 2016
    Messages
    1 513
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Tech Lead

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 513
    Par défaut
    Bonjour,

    En faisant :

    Code Bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    git clone git@github.com:gtk-rs/gtk-rs-core.git
    cd gtk-rs-core
    git checkout 0.19.5
    cargo vendor
    grep -rn 'The PKG_CONFIG_PATH environment variable is not set.'
    je tombe sur le code : https://github.com/rust-lang/pkg-con...rc/lib.rs#L380

    J'en déduis que std::env::var("PKG_CONFIG_PATH") (ici) a retourné une erreur. Or, d'après la documentation de std::env::var :

    This function will return an error if the environment variable isn't set.
    This function may return an error if the environment variable's name contains the equal sign character (=) or the NUL character.
    This function will return an error if the environment variable's value is not valid Unicode. If this is not desired, consider using var_os.

    Du coup, peut-être que, contrairement à ce que dit le message The PKG_CONFIG_PATH environment variable is not set., la variable PKG_CONFIG_PATH est définie, mais a une valeur qui ne plaît pas à std::env::var.

  3. #3
    Membre expérimenté

    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2012
    Messages
    329
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2012
    Messages : 329
    Par défaut
    Oui effectivement... je sais pas du tout comment cela se fait mais à chaque fois que je l'affiche via un bête echo en bash, elle est vide !!
    alors que je l'exporte juste avant de tenter de cross-compiler...

    je vais voir cela cet aprem... no stress.

  4. #4
    Membre Expert
    Avatar de Pyramidev
    Homme Profil pro
    Tech Lead
    Inscrit en
    Avril 2016
    Messages
    1 513
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Tech Lead

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 513
    Par défaut
    Finalement, d'où venait le problème ?

  5. #5
    Membre expérimenté

    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2012
    Messages
    329
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2012
    Messages : 329
    Par défaut
    Je sais pas... bon toutes les "librairies" ont une version apparemment inférieure à celles requises...

    Allow cross: 1
    Compiling glib-sys v0.18.1
    Compiling gobject-sys v0.18.0
    Compiling gio-sys v0.18.1
    Compiling gdk-pixbuf-sys v0.18.0
    Compiling pango-sys v0.18.0
    Compiling glib-sys v0.19.5
    Compiling gdk-sys v0.18.0
    Compiling atk-sys v0.18.0
    Compiling cairo-sys-rs v0.18.2
    Compiling gobject-sys v0.19.5
    Compiling gio-sys v0.19.5
    glib-2.0 >= 2.56
    gio-2.0 >= 2.56
    gdk-pixbuf-2.0 >= 2.36.8
    gobject-2.0 >= 2.56
    glib-2.0 >= 2.66
    atk >= 2.28
    pango >= 1.40
    gdk-3.0 >= 3.22
    cairo >= 1.14
    gobject-2.0 >= 2.66
    gio-2.0 >= 2.66
    ...donc je suis un peu dubitatif d'autant que je mets à jour systématiquement rust, je suis sur une version stable de leap (opensuse 15.5)...

  6. #6
    Membre expérimenté

    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2012
    Messages
    329
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2012
    Messages : 329
    Par défaut
    Non, ça ne marche pas la cross compilation :{

Discussions similaires

  1. Réponses: 4
    Dernier message: 26/04/2018, 11h31
  2. cross compilation sous linux
    Par scavenger dans le forum C++
    Réponses: 3
    Dernier message: 06/03/2013, 19h47
  3. Réponses: 4
    Dernier message: 05/07/2012, 21h44
  4. cross-compilation de linux (x86 > arm)
    Par nicolayak dans le forum Linux
    Réponses: 0
    Dernier message: 20/02/2012, 16h43
  5. cross compilation avec mingw : probleme avec GTK+
    Par superZozo dans le forum GTK+
    Réponses: 10
    Dernier message: 25/04/2010, 16h36

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