Gsoap sous windows reference a des fonctions de GSOAP

r_asmak Messages postés 6 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 1 septembre 2008 - 28 août 2008 à 15:26
r_asmak Messages postés 6 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 1 septembre 2008 - 29 août 2008 à 17:06
Bonjour
j'essaye d'exécuter les exemples (inclu dans le package d'installation repertoires /samples) de GSOAP, en executant le make dans Msys-MingW , il ya deux parties dans ce make
1-generation de stubs  (soapcc2 ficheir.h)
2- compilation des fichers genérés (g++ -O2  -I ....)
l'etape 1 passe tres bien
le probleme est que on fait appelle a des fonctions de GSOAP , j'ai pas compilé la bibliotheque GSOAP et je ne sais pas comment le faire,
voici une la partie de message d'erreur que msysMingw m'affiche
merci d'avance 

g++ -Wall -O2 -I../..  -o luclient luclient.cpp lumat.cpp soapC.cpp soapClient.cpp ../../stdsoap2.cpp
In file included from c:/tools/mingw/include/c++/3.2.3/backward/iostream.h:31,
                 from luclient.cpp:2:
c:/tools/mingw/include/c++/3.2.3/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <sstream> instead of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated.
../../stdsoap2.cpp:71: warning: ignoring #pragma comment
../../stdsoap2.cpp: In function `const char* soap_LONG642s(soap*, long long
   int)':
../../stdsoap2.cpp:9059: warning: int format, different type arg (arg 3)
../../stdsoap2.cpp: In function `int soap_s2LONG64(soap*, const char*,
   LONG64*)':
../../stdsoap2.cpp:9102: warning: int format, different type arg (arg 3)
../../stdsoap2.cpp: In function `const char* soap_ULONG642s(soap*, long long
   unsigned int)':
../../stdsoap2.cpp:9831: warning: unsigned int format, different type arg (arg
   3)
../../stdsoap2.cpp: In function `int soap_s2ULONG64(soap*, const char*,
   ULONG64*)':
../../stdsoap2.cpp:9874: warning: unsigned int format, different type arg (arg
   3)
C:/DOCUME~1/g218931/LOCALS~1/Temp/cc0Meaaa.o(.text+0xa3):stdsoap2.cpp: undefined reference to `select@20'
C:/DOCUME~1/g218931/LOCALS~1/Temp/cc0Meaaa.o(.text+0xb3):stdsoap2.cpp: undefined reference to `WSAGetLastError@0'
C:/DOCUME~1/g218931/LOCALS~1/Temp/cc0Meaaa.o(.text+0xfe):stdsoap2.cpp: undefined reference to `send@16'
C:/DOCUME~1/g218931/LOCALS~1/Temp/cc0Meaaa.o(.text+0x11c):stdsoap2.cpp: undefined reference to `WSAGetLastError@0'
C:/DOCUME~1/g218931/LOCALS~1/Temp/cc0Meaaa.o(.text+0x17c):stdsoap2.cpp: undefined reference to `select@20'
C:/DOCUME~1/g218931/LOCALS~1/Temp/cc0Meaaa.o(.text+0x188):stdsoap2.cpp: undefined reference to `WSAGetLastError@0'
C:/DOCUME~1/g218931/LOCALS~1/Temp/cc0Meaaa.o(.text+0x6a0):stdsoap2.cpp: undefined reference to `select@20'
C:/DOCUME~1/g218931/LOCALS~1/Temp/cc0Meaaa.o(.text+0x6b0):stdsoap2.cpp: undefined reference to `WSAGetLastError@0'

4 réponses

SebLinck Messages postés 212 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 23 juin 2011
28 août 2008 à 16:31
Salut,


Il faut que tu lies la librairie GSoap.

ex:

#include ......

#pragma  comment(lib,"gsoap.lib") // gsoap.lib c'est le nom du fichier .lib
Cordialement,
Sébastien.
0
r_asmak Messages postés 6 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 1 septembre 2008
28 août 2008 à 18:28
merci sebastien surtout pour la rapidité de ta reponse
mais je ne sais pas comment realisé le lib de la bibliotheque gsoap
j'ai telecharger gsoap de sourceforge, puis décompresser , c'est tout , et il n'est y a pas de .lib dans le dossier decompressé
(j'ai visual studio 2005, visual studio 2003 .net,  msys- mingw  toute une armé d'outils )
merci
0
Neo_Fr Messages postés 653 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 10 novembre 2014 2
28 août 2008 à 19:31
Salut, ta peut etre oublier de linker avec la lib de winsock,
avec gcc rajoute -lws2_32, avec VC++ tu peut directement ajouter ca: #pragma comment(lib, "ws2_32.lib") en haut de stdsoap2.cpp..

Neo_Fr
0
r_asmak Messages postés 6 Date d'inscription samedi 24 février 2007 Statut Membre Dernière intervention 1 septembre 2008
29 août 2008 à 17:06
bonjour
merci Neo_fr
par ce que je ne voulais pas ecrire beaucoup de code, j'ai fait la liaison entre les bibliothèques manquantes et mon projet avec  visual studio
Projet--> Proprietes-->Editeurs de liens--> Repertoire de bibliotheques supplémentaires.
ou j'ai ajouter les chemins des bibliothèques manquantes

Quand a GSOAP il fallait que je rajoute juste  stdsoap2.cpp et   stdsoap2.h a mon projet !!! (ces sources se trouvent dans le dossier de Gsoap, apres telechargement et decompression on les trouve dans la racine du repertoire)

NB; dans le dossier que j'ai telecharger il y a beaucoup de fichiers sources il suffit de rajouter au projet  stdsoap2.cpp et   stdsoap2.h.
si on essaye de rajouter des autres il y aura certainement des problemes
bonne journée a tous
0
Rejoignez-nous