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

Code::Blocks Discussion :

Projet client/serveur: faire une build windows/linux


Sujet :

Code::Blocks

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    433
    D�tails du profil
    Informations personnelles :
    �ge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 433
    Par d�faut Projet client/serveur: faire une build windows/linux
    Bonjour,

    J'ai un projet client/serveur que j'ai cr�� sous CB. Je travaille sous Windows.
    Mon projet est configur� de la mani�re suivante:
    • Un build serveur qui prends des fichiers communs aux deux builds, ainsi que des fichiers propre au serveur
    • Un build client qui prends des fichiers communs aux deux builds, ainsi que des fichiers propre au client


    Jusque l�, tout est parfait.
    Le soucis c'est que mon serveur je dois l'upoader sur un h�bergement, qui est sous environnement Linux. Du coup, ma build Windows n'est pas top...!

    Je voudrais donc savoir comment faire une build linux avec mon CB sous Windows ?
    Ainsi mon serveur serai build� correctement pour �tre upload�, et mon client fonctionnerai sous Windows correctement. Et si vous r�pondez � ma question, je pourrais faire un client Windows, et un client Linux (le top).

    Infos suppl�mentaires:
    1. Mon projet est cod� en C.
    2. Mon projet utilise deux librairies que je link � la compile. Il s'agit de pthread pour les threads, et ws2_32 pour les sockets r�seau. Il me semble que cette seconde n'a besoin d'�tre link� que sous Windows, mais est-il grave de la linker �galement sous Linux ?
    3. J'ai bien pris le soin de d�velopper un projet portable. J'ai utilis� des fonctions qui tourne sous les deux environnement, le cas �ch�ant j'ai ajout� des commandes pr�-processeur de type #ifdef WIN32 et #elif defined (linux).
    4. Je suis un utilisateur Linux novice.


    Merci !

  2. #2
    Membre �prouv�
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    217
    D�tails du profil
    Informations personnelles :
    �ge : 32
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 217
    Par d�faut
    Ce que tu souhaites faire s'appelle de la cross compilation. J'ai jamais fait �a mais j'ai trouv� ce post sur ce m�me forum: http://www.developpez.net/forums/d48...windows-linux/

    Bonne chance!

  3. #3
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    433
    D�tails du profil
    Informations personnelles :
    �ge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 433
    Par d�faut
    J'ai suivi le processus, cela fonctionne tr�s bien et je peux faire une build Linux sous Windows.

    Mais cela ne change rien au fait que je n'utilise toujours pas CodeBlocks ! A la base ma demande c'�tait dans l'id�e de choisir "Build serveur Linux" dans "Build target" et que �a me ponde le serveur pr�s � �tre upload�.

    Cependant les compileurs sont install�s d�sormais dans "C:/cygwin/opt/crosstool", est-il possible de les importer dans CB pour compiler avec ?
    Si oui, comment faire ? Je n'ai jamais rien fait de tel, j'ai toujours utilis� les compileurs de base...


    J'en profite pour faire un r�sum� � chaud pour le cross-compiling, si jamais quelqu'un tombe ici en cherchant la solution.


    Compiler un build Linux sous Windows

    La solution que je r�sume est celle-ci:
    http://metamod-p.sourceforge.net/cro...for.linux.html

    Traduite par marco3181 de Developpez.net ici:
    http://www.developpez.net/forums/d48...windows-linux/

    1. R�cup�rer setup.exe sur le site http://www.cygwin.com/
    2. Lancez l'installe. Vous �tes amen�s au bout de quelques "Suivant" sur une longue liste de composant que vous pouvez installer.
      D�roulez "Devel" et cochez la ligne correspondant � quelque chose comme "GCC - C compiler" dans la colonne "bin". Cela va cocher tous les autres composant n�cessaire pour les d�pendances.
    3. Lancez le t�l�chargement. Personnellement chez moi, �a � �t� assez long (je n'ai pas mesur�, mais plus de 30min). Sachant que �a ne viens pas de ma connexion, mais la vitesse des t�l�chargement semblaient �tre brid�s assez bas.
    4. T�l�chargez le crosscompiler Linux pour cygwin:
      "cygwin-gcc-linux.tar.bz2" (68.2 Mb).
      md5sum: 340e91a346f5bb17e660db10e43005b8

      Ces compilers sont fait avec crosstool 0.28-rc37. Ce package contient:
      gcc-3.3.4 and gcc-2.95.3 for i386 (glibc 2.1.3) and gcc-3.3.3 for amd64
      (glibc 2.3.2).

      Note: Il y a une nouvelle version de GCC disponible avec la glibc 2.3.2:
      "cygwin-gcc-3.3.6-glibc-2.3.2-linux.tar.bz2 (i386, x86_64)".
    5. Copiez "cygwin-gcc-linux.tar.bz2" dans le r�pertoire d'installation de Cygwin (par d�faut "c:\cygwin").
    6. Lancez la console Cygwin par le raccourcis (ou par "C:\cygwin\Cygwin.bat" par d�faut) et vous tombez dans une console, tout comme sous Linux.
    7. Rendez-vous dans le r�pertoire principal avec la commande "cd /"
    8. D�sarchivez le fichier avec la commande "tar -jxvf cygwin-gcc-linux.tar.bz2"
    9. Vous pouvez travailler comme en environnement Linux.
      Les Cross-compilers sont install�s sous "/opt/crosstool". Vous pouvez les utiliser directement ou avec les commandes:
      gcc-linux, g++-linux, gcc-linux-2.95,
      g++-linux-2.95, gcc-linux-x86_64 and g++-linux-x86_64.

  4. #4
    Membre �prouv�
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    217
    D�tails du profil
    Informations personnelles :
    �ge : 32
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 217
    Par d�faut
    tu peux ajouter des cible de compilation dans Code::Blocks: tu vas dans Projet->Propri�t�s->Cibles de g�n�ration->Ajouter
    Apr�s t'as juste � s�lectionner les fichiers � ajouter au build dans le m�me onglet "build target files".

    Pour le compilateur, si tu choisis Cygwin GCC comme compilateur et en r�glant quelques options tu devrais r�ussir: Compilateur & d�bugger puis r�gler l'install pour Cygwin GCC (onglet programmes y'a r�pertoire de recherche et les noms des outils que tu peux changer).

  5. #5
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    433
    D�tails du profil
    Informations personnelles :
    �ge : 38
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 433
    Par d�faut
    En fait j'ai essay� de copier une config d'un compileur (celle du GCC par exemple) et de modifier les .exe dans "Toolchain executable" mais je ne suis pas arriv� � mes fins.

    Par exemple, je ne voie pas quel exe je dois mettre pour "Make program".
    Et quand je compile, il me dit que la dll "Cygwin1.dll" est absente.

    Une id�e ?

  6. #6
    Membre �prouv�
    Profil pro
    Inscrit en
    F�vrier 2007
    Messages
    217
    D�tails du profil
    Informations personnelles :
    �ge : 32
    Localisation : France

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 217
    Par d�faut
    Le programme make permet l'utilisation des makefiles, super pratique lorsqu'on utilise les makefiles (� mon avis C::B ne doit s'en servir que lorsque le projet utilise un makefile propre).

    C'est quand tu compiles ou � l'�x�cution qu'il te dit �a? Car �i c'est � l'�x�cution il suffit de mettre la DLL dans le m�me r�pertoire que l'appli. Sinon je sais pas, j'ai jamais utilis� Cygwin

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Migrer une application client/serveur vers une architecture 3-tiers
    Par apoca dans le forum G�n�ral Dotnet
    R�ponses: 3
    Dernier message: 18/09/2016, 12h46
  2. Client/Serveur : config pare-feu Windows
    Par eultartuffe dans le forum Delphi
    R�ponses: 5
    Dernier message: 30/05/2007, 12h51
  3. abstraction de client /serveur dans une application
    Par Pegaz dans le forum D�veloppement
    R�ponses: 2
    Dernier message: 24/01/2007, 09h30
  4. R�ponses: 1
    Dernier message: 06/07/2006, 18h56
  5. R�ponses: 4
    Dernier message: 06/03/2006, 17h54

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