Hello out there,
I try to build a deamon-process for FreeWRT, which includes gSOAP to
comunicate with a client and between each other. So I don't know if you
know gSOAP? Its a solution in which you do not need a shared library,
all the soap-functionality is been linked to your process. You declare
with wsdl a method and gsoap creates a lot of files with skeleton-code.
You only have to fill this skeleton-code and link it to you main-program.

So my problem is, that I don't know how to compile these gSOAP for
FreeWRT. There is directory in my host's include-dir (I use
debian-testing) for gSOAP "/usr/include/gsoap".
In this dir a have some header but also code-files: stdsoap2.c 
stdsoap2.cpp  stldeque.h  stl.h  stllist.h  stlset.h  stlvector.h.
Futhermore I have in /usr/include a stdsoap2.h.


And now I presend you my makefile:
CC = gcc
#CROSSCC =
/home/chris/tmp/freewrt_1_0_3/staging_dir_mipsel/bin/mipsel-linux-uclibc-gcc
#INCLUDEWRT = /home/chris/tmp/freewrt_1_0_3/staging_dir_mipsel/usr/include
#LINKWRT = /home/chris/tmp/freewrt_1_0_3/staging_dir_mipsel/usr/lib/
#SYSWRT = /home/chris/tmp/freewrt_1_0_3/staging_dir_mipsel/lib/
GSOAPINC = /usr/include/gsoap/
CROSSCC =
/home/chris/tmp/trunk/freewrt/cross_mipsel/host/bin/mipsel-linux-uclibc-gcc
INCLUDEWRT = /home/chris/tmp/trunk/freewrt/cross_mipsel/target/usr/include/
LINKWRT = /home/chris/tmp/trunk/freewrt/cross_mipsel/target/usr/lib/
SYSWRT = /home/chris/tmp/trunk/freewrt/cross_mipsel/target/lib/


CFLAGS = -Wall
TARGET_CFLAGS = -fhonour-copts

all: pumuckl pumclient pumuckld

pumuckl: pumuckl.c
    $(CC) $(CFLAGS) -D_REENTRANT -lpthread -lpcap -o pumuckl pumuckl.c
soapC.c soapServer.c soapClient.c  /usr/include/gsoap/stdsoap2.c

pumclient: pumclient.c
    $(CC) $(CFLAGS) -o pumclient pumclient.c
   
pumuckld: pumuckl.c
    $(CROSSCC) $(CFLAGS) $(TARGET_CFLAGS) -I$(INCLUDEWRT) -I$(GSOAPINC)
-L$(LINKWRT) -L$(SYSWRT) -D_REENTRANT -lpthread -lpcap -o pumuckld
pumuckl.c soapC.c soapServer.c soapClient.c  /usr/include/gsoap/stdsoap2.c

And this is the result:

/home/chris/tmp/trunk/freewrt/cross_mipsel/host/bin/mipsel-linux-uclibc-gcc
-Wall -fhonour-copts
-I/home/chris/tmp/trunk/freewrt/cross_mipsel/target/usr/include/
-I/usr/include/gsoap/
-L/home/chris/tmp/trunk/freewrt/cross_mipsel/target/usr/lib/
-L/home/chris/tmp/trunk/freewrt/cross_mipsel/target/lib/ -D_REENTRANT
-lpthread -lpcap -o pumuckld pumuckl.c soapC.c soapServer.c
soapClient.c  /usr/include/gsoap/stdsoap2.c
pumuckl.c: In function `commandparser':
pumuckl.c:207: warning: unused variable `laufvar'
/tmp/cc5VfITp.o: In function `soap_float2s':
stdsoap2.c:(.text+0x1c434): undefined reference to `isnan'
/tmp/cc5VfITp.o: In function `soap_double2s':
stdsoap2.c:(.text+0x1d050): undefined reference to `isnan'
collect2: ld returned 1 exit status
make: *** [pumuckld] Fehler 1

So there is that symbol 'isnan' that cannot resolved!!??!! I thought its
in the math.h but since yesterday I have a math.h also on my
target-platform.

Does anybody know how to handle this, or did I make so mistake in my
makefile.

Thank you

Gruss Christian

_______________________________________________
freewrt-developers mailing list
[email protected]
https://www.freewrt.org/lists/listinfo/freewrt-developers

Reply via email to