Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

gSOAP...

2 réponses
Avatar
vincent lauria
Bonjour,
J'ai un problème (qui viens surement de mon MakeFile) avec la
compilation d'un simple service avec gSOAP:

LIBDIR = -L/usr/lib -L/usr/lib/mysql
INCDIR = -I/usr/include/mysql
LIBRARY = -lgsoap -lmysqlclient -lm

GSOAP = soapServer.c soapC.c soapServerLib.c
all: build

build:
soapcpp2 -c server.h
gcc -Wall -o server server.c ${GSOAP} ${INCDIR} ${LIBDIR} ${LIBRARY}

clean:
rm -f *.re[sgq].xml soap*.[ch] ns.*
rm -f Planet.nsmap Planet.wsdl ns.xsd

Est-ce-que sa vous parais juste comme makefile pour ceux qui connaise
gSOAP (pas comme moi:)..
Merci pour votre aide, Vincent

2 réponses

Avatar
Yves ROMAN

Bonjour,
J'ai un problème (qui viens surement de mon MakeFile) avec la
compilation d'un simple service avec gSOAP:



<HS>
Quel problème précisément : compilation, édition de liens ?

LIBDIR = -L/usr/lib -L/usr/lib/mysql
INCDIR = -I/usr/include/mysql
LIBRARY = -lgsoap -lmysqlclient -lm

GSOAP = soapServer.c soapC.c soapServerLib.c
all: build

build:
soapcpp2 -c server.h
gcc -Wall -o server server.c ${GSOAP} ${INCDIR} ${LIBDIR} ${LIBRARY}

clean:
rm -f *.re[sgq].xml soap*.[ch] ns.*
rm -f Planet.nsmap Planet.wsdl ns.xsd

Est-ce-que sa vous parais juste comme makefile pour ceux qui connaise
gSOAP (pas comme moi:)..


Je ne connais pas gSOAP mais je me remarque :
- il n'y a pas de -L particulier pour gSOAP : est-ce que la bibliothèque
libgsoap.* se trouve sous /usr/lib ? (voire sous /usr/lib/mysql ?)
- de même, il n'y a pas de -I pour les includes liés à gSOAP (je suppose qu'il y
en
a s'il y a une bibliothèque) : est-ce qu'il se trouvent sous le répertoire par
défaut (/usr/include) voire sous /usr/include/mysql ?

</HS>

Avatar
vincent lauria
Yves ROMAN wrote:

Bonjour,
J'ai un problème (qui viens surement de mon MakeFile) avec la
compilation d'un simple service avec gSOAP:




<HS>
Quel problème précisément : compilation, édition de liens ?


LIBDIR = -L/usr/lib -L/usr/lib/mysql
INCDIR = -I/usr/include/mysql
LIBRARY = -lgsoap -lmysqlclient -lm

GSOAP = soapServer.c soapC.c soapServerLib.c
all: build

build:
soapcpp2 -c server.h
gcc -Wall -o server server.c ${GSOAP} ${INCDIR} ${LIBDIR} ${LIBRARY}

clean:
rm -f *.re[sgq].xml soap*.[ch] ns.*
rm -f Planet.nsmap Planet.wsdl ns.xsd

Est-ce-que sa vous parais juste comme makefile pour ceux qui connaise
gSOAP (pas comme moi:)..



Je ne connais pas gSOAP mais je me remarque :
- il n'y a pas de -L particulier pour gSOAP : est-ce que la bibliothèque
libgsoap.* se trouve sous /usr/lib ? (voire sous /usr/lib/mysql ?)
- de même, il n'y a pas de -I pour les includes liés à gSOAP (je suppose qu'il y
en
a s'il y a une bibliothèque) : est-ce qu'il se trouvent sous le répertoire par
défaut (/usr/include) voire sous /usr/include/mysql ?

</HS>


Oui c'est exacte, en fait c'est un outil qui est charger de créer tous
se ci (soapcpp2). Mes bibliothèques se trouve bien dans /usr/lib:

/usr/lib/libgsoap.a
/usr/lib/libgsoap++.a
/usr/lib/libgsoapck.a
/usr/lib/libgsoapck++.a

Le message d'erreur de compilation et le suivant:

gcc -o server server.c soapServer.c soapC.c soapServerLib.c
-I/usr/include/mysql -L/usr/lib -L/usr/lib/mysql -lgsoap -lmysqlclient -lm
/tmp/ccAF2Cse.o(.text+0x1f64): dans la fonction « soap_serve »:
: définitions multiples de « soap_serve »
/tmp/ccY2mfvI.o(.text+0x0): défini pour la première fois ici
/tmp/ccAF2Cse.o(.text+0x203e): dans la fonction « soap_serve_request »:
: définitions multiples de « soap_serve_request »
/tmp/ccY2mfvI.o(.text+0xda): défini pour la première fois ici
/tmp/ccAF2Cse.o(.text+0x209b): dans la fonction « soap_serve_ns__add »:
: définitions multiples de « soap_serve_ns__add »
/tmp/ccY2mfvI.o(.text+0x137): défini pour la première fois ici
collect2: ld a retourné 1 code d'état d'exécution
make: *** [build] Erreur 1

Les fichiers "soapServer.c soapC.c soapServerLib.c" sont générer par
soapcpp2. Merci encore !

Vincent Lauria