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

C++ Discussion :

Executable pour linux à partir de windows


Sujet :

C++

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2
    Points : 4
    Points
    4
    Par défaut Executable pour linux à partir de windows
    Bonjour tout le monde,
    cela fait peu de temps que je fais du développement c++, mais jusqu'à présent j'ai toujours eu un environnement de développement sous Linux et un sous Windows 64bits en fonction des besoins.
    Mais aujourd'hui je me pose la question : est-il possible de compiler un projet sous Windows pour qu'il s'exécute sous Linux (32 et 64bits si possible, et encore mieux avec une archi arm... je sais j'abuse un peu là )?

    Je précise que je n'utilise pas d'include propres à Windows, ce sont surtout des appli de calculs que je réalise.

    Je développe avec Eclipse sous Linux, et sous Windows j'utilise Eclipse et/ou Visual Studio.

    Après quelques recherches avec mon ami google, je n'ai rien trouvé sur ce sujet, j'ai souvent trouvé des topics sur la méthode de compiler des exe Windows sous Linux... Du coup, comment fait-on l'inverse?? ^^

    Je vous remercie par avance,
    et désolé si ce sujet a déjà été posé (j'ai du effectué de mauvaises recherches...) ou si c'est une question de connaissances de base que je n'aurais pas...

    new_cpp

  2. #2
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Citation Envoyé par new_cpp Voir le message
    Bonjour tout le monde,
    cela fait peu de temps que je fais du développement c++, mais jusqu'à présent j'ai toujours eu un environnement de développement sous Linux et un sous Windows 64bits en fonction des besoins.
    Mais aujourd'hui je me pose la question : est-il possible de compiler un projet sous Windows pour qu'il s'exécute sous Linux (32 et 64bits si possible, et encore mieux avec une archi arm... je sais j'abuse un peu là )?
    Oui, c'est tout à fait possible.

    Cela s'appelle la compilation croisée (cross compile en anglais)

    Je précise que je n'utilise pas d'include propres à Windows, ce sont surtout des appli de calculs que je réalise.
    C'est déjà une excellente chose
    Je développe avec Eclipse sous Linux, et sous Windows j'utilise Eclipse et/ou Visual Studio.
    Pour autant que je sache, il faudra de préférence utiliser Eclipse, car il utilise généralement Gcc (avec le module CDT, il me semble).

    Et, pour autant que je sache, VC++ n'offre aucun moyen de faire de la compilation croisée.

    Après quelques recherches avec mon ami google, je n'ai rien trouvé sur ce sujet, j'ai souvent trouvé des topics sur la méthode de compiler des exe Windows sous Linux... Du coup, comment fait-on l'inverse?? ^^
    Exactement de la même manière, à ceci près que l'on doit trouver un compilateur susceptible de fonctionner sous windows mais de générer des exécutables pour linux.

    Gcc est typiquement utilisé parce que c'est un projet linux à l'origine et qu'il est porté sous windows.

    CLang et LLVM sont également susceptibles de faire le travail à ce qu'il me semble

    Mais pour y arriver, je crains qu'il ne te faille passer par la génération de ton propre compilateur croisé : il existe des projets (MinGW, MinGW-w64) qui permettent d'avoir une compilation croisée dans le sens linux -->windows, mais il n'y a, à ma connaissance du moins, aucun projet qui fournisse le compilateur directement disponible pour faire l'inverse.

    Enfin, ce n'est pas tout à fait vrai... Il y a toujours la possibilité d'utiliser cygwin, qui est un très bon émulateur linux sous windows, mais cette solution ne me convainc pas réellement

    Je sais qu'il y a eu un article qui visait justement à créer un compilateur croisé dans le sens windows ->linux au départ de MinGW sur le site.

    Cet article date un peu, mais tu devrais pouvoir le retrouver "assez facilement" et t'en inspirer
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup pour ta réponse, elle m'apporte beaucoup d'informations !
    Je vais explorer tout ça, je vais creuser avec cygwin au pire

  4. #4
    Membre expérimenté Avatar de ctxnop
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 858
    Points : 1 732
    Points
    1 732
    Par défaut
    Visiblement la méthode avec cygwin fonctionne bien, d'après ce que je lis dans ce post : http://www.developpez.net/forums/d48...windows-linux/

    Visual Studio peut faire du cross compile, mais pas d'un Windows vers un Linux. Il se contente de faire du Windows hôte vers un autre Windows sur une plateforme matérielle différente (genre de x86 à it64).
    Il existe plusieurs projets visant à utiliser le Shell isolé pour créer des IDE capable de compiler pour d'autres plateformes telles qu'ARM.
    Mais je n'ai rien vu pour faire du Windows vers du Linux.

Discussions similaires

  1. Les logiciels sous Linux pour remplacer ceux sous Windows
    Par Nightfall dans le forum Contribuez
    Réponses: 23
    Dernier message: 15/02/2009, 22h21
  2. auto-extractible linux à partir de windows
    Par superpigeon dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 09/04/2007, 02h36
  3. Compiler en C à partir de windows en manuel (makefile) pour Linux
    Par _SamSoft_ dans le forum Autres éditeurs
    Réponses: 11
    Dernier message: 06/04/2007, 17h12
  4. Emulateurs Windows pour Linux
    Par draluom dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 21/03/2007, 13h53
  5. ORB pour Linux et Windows
    Par slyer dans le forum CORBA
    Réponses: 1
    Dernier message: 18/05/2006, 14h56

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