Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1561 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Probleme compilation sous windows [devc++]

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme compilation sous windows [devc++]

n°1503885
DrOctopus
Posté le 16-01-2007 à 21:09:25  profilanswer
 

Bonjour,
j'ai un programme que j'ai écrit en C sous linux et qui utilise les sockets. Sous linux ca marche bien, et j'aimerais utiliser mon programme sous windows. Sur devc++, j'ai intégré les librairies libws2_32.a -lwsock32 -lwinmm et -lmwindows dans outils/options du compilateur/ éditeur de liens, voila le résultat de la compilation:
 
Compilateur: Default compiler
Exécution de  gcc.exe...
gcc.exe "C:\send2.c" -o "C:\send2.exe"    -I"C:\Dev-Cpp\include"   -L"C:\Dev-Cpp\lib" libws2_32.a -lwsock32 -lwinmm -lmwindows  
gcc.exe: libws2_32.a: No such file or directory
 
Exécution terminée
Compilation OK
 
Résultat: aucun .exe crée, sans doute à cause de la librairie libws2_32.a ??
Quelqu'un aurait-il une idée svp ??

mood
Publicité
Posté le 16-01-2007 à 21:09:25  profilanswer
 

n°1503935
Emmanuel D​elahaye
C is a sharp tool
Posté le 16-01-2007 à 23:00:46  profilanswer
 

DrOctopus a écrit :

gcc.exe "C:\send2.c" -o "C:\send2.exe"    -I"C:\Dev-Cpp\include"   -L"C:\Dev-Cpp\lib" libws2_32.a -lwsock32 -lwinmm -lmwindows



libws2_32.a


Pourquoi cette bibliothèque est-elle traitée différemment ?

-lws2_32


comme les autres, non ?


Message édité par Emmanuel Delahaye le 16-01-2007 à 23:01:15

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1503938
olivthill
Posté le 16-01-2007 à 23:04:50  profilanswer
 

Je vois libws2_32.a dans mon installation de dev-cpp, et je pense que vous pouvez aussi le voir. Chez moi, cette bibliothèque est dans C:\Dev-Cpp\lib, et ça a l'air d'être la même chose pour vous.
 
La ligne de commande ne va pas parcequ'au lieu de "libws2_32", il faudrait avoir "-lws2_32" (sans les guillemets. En effet, autrefois, les programmeurs ont décidé de laisser tomber "ib" dans le préfixe "lib" pour gagner deux caractères sur la ligne de commande qui était assez courte.
 
Dans l'environnement de dev-cpp, il faut aller dans les options du projet, puis l'onglet paramètre. Vous devriez voir trois zones de saisie rectangulaires. Inscrivez "-lws2_32" (sans les guillemets) dans celle de droite, qui est celle du "Linker".
Ou bien, ouvrez makefile.win, et faîtes en sorte d'avoir la ligne :
LIBS =  -L"C:/DEV-CPP/lib" -lwsock32 -lwinmm -lws2_32
(Je ne suis pas certain qu'il faille -lmwindows, parce que j'ai un exemple avec -mwindows à la place.)

n°1504355
DrOctopus
Posté le 17-01-2007 à 19:10:40  profilanswer
 

merci pour vos réponses, euh je n'ai pas crée de projet, juste une simple source, mais si je dois en créer un je vais le faire.
J'ai modifier la ligne de l'éditeur de lien pour mettre simplement:
-lws2_32.a  -lwinmm -lmwindows
 
Résultat:  
  cannot find -lws2_32.a  
  ld returned 1 exit status  

n°1504358
IrmatDen
Posté le 17-01-2007 à 19:17:30  profilanswer
 

Il faut enlever le .a aussi, comme pour les autres libs.
Edit: Emmanuel te l'avait dit en plus :)


Message édité par IrmatDen le 17-01-2007 à 19:20:09
n°1504359
DrOctopus
Posté le 17-01-2007 à 19:19:00  profilanswer
 

en fait j'ai regardé dans C:\devcpp\lib et je n'ai pas de librairie lws2_32.a mais libws2_32.a
apres compilation, aucun changement par rapport au début:
 
Compilateur: Default compiler
Exécution de  gcc.exe...
gcc.exe "C:\send2.c" -o "C:\send2.exe"    -I"C:\Dev-Cpp\include"   -L"C:\Dev-Cpp\lib" libws2_32.a  -lwinmm -lmwindows  
gcc.exe: libws2_32.a: No such file or directory
 
Exécution terminée
Compilation OK

n°1504361
DrOctopus
Posté le 17-01-2007 à 19:20:28  profilanswer
 

merci de ton aide IrmatDen, mais le résultat est le même ...

n°1504363
Emmanuel D​elahaye
C is a sharp tool
Posté le 17-01-2007 à 19:23:08  profilanswer
 

DrOctopus a écrit :

merci de ton aide IrmatDen, mais le résultat est le même ...


Il faut mettre -lws2_32. On te l'a déjà dit 3000 fois. Si ça ne fonctionne pas, montre la ligne de commande et les messages d'erreur.

 


Message édité par Emmanuel Delahaye le 17-01-2007 à 19:24:45

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1504370
DrOctopus
Posté le 17-01-2007 à 19:45:54  profilanswer
 

lol c bon ca marche désolé :)
sinon j'ai carément enlevé -lmwindows, ca faisai une erreur, et je crois pas que cette librairie soit obligatoire
merci encore !

n°1504377
DrOctopus
Posté le 17-01-2007 à 20:30:32  profilanswer
 

sinon j'ai une autre question, lorsqu'on utilise les sockets avec un poste sous windows qui envoi des infos à un poste sous linux, est-ce que je dois installer samba, ou est ce que les sockets (qui sont écrit en C) permettent la compatibilité windows/linux ? (ce qui m'étonnerai lol)

mood
Publicité
Posté le 17-01-2007 à 20:30:32  profilanswer
 

n°1504380
olivthill
Posté le 17-01-2007 à 20:37:32  profilanswer
 

Les connections TCP/IP (avec ou socket) peuvent être établies (de menuisier) sans que Samba soit installé, de même que ping, ftp, telnet, marchent sans avoir besoin de Samba.

n°1504382
Emmanuel D​elahaye
C is a sharp tool
Posté le 17-01-2007 à 20:39:48  profilanswer
 

DrOctopus a écrit :

sinon j'ai une autre question, lorsqu'on utilise les sockets avec un poste sous windows qui envoi des infos à un poste sous linux, est-ce que je dois installer samba, ou est ce que les sockets (qui sont écrit en C) permettent la compatibilité windows/linux ? (ce qui m'étonnerai lol)


Aucun rapport. Samba, c'est du niveau applicatif (niveau 7) et ça concerne la gestion des fichiers sur un serveur GNU/Linux connecté à des clients Windows... Les sockets c'est très loin en dessous... Ce sont des tuyaux de données transparents. On en fait ce qu'on veut, du pire au meilleur.
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1504384
-ThX-
Not here anymore
Posté le 17-01-2007 à 20:45:36  profilanswer
 
n°1504407
DrOctopus
Posté le 17-01-2007 à 21:21:47  profilanswer
 

oki c bien ske je pensai, merci bien !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Probleme compilation sous windows [devc++]

 

Sujets relatifs
Problème avec menu déroulant[DirectX] problème de skinned mesh
Problème de DIV lors de la réductionPetit probleme ...
Probléme de type VBAprobleme avec EasyPHP
Problème de compréhension avec un ligne de shell{flash 8} probleme d'arrêt sur un bouton
Problème avec requete SELECT .. WHEREProblème java sous Firefox, ok sous IE
Plus de sujets relatifs à : Probleme compilation sous windows [devc++]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR