Hi Lance,

There are some pieces missing from the test c++ apps. Find attached a patch. Dave/Gerg would you mind applying this to the tree.

The problem with iperf is that you are not linking against pthread.

I haven't tried building iperf, but I do notice that your link line does not include pthreads and you will need to add this. Adding $ (SLIBPTHREAD) to your link line should fix the problem.

Cheers

Matt

On 21/02/2007, at 4:46 AM, Lance Spaulding wrote:

Thanks Matt. With that change I can now build and run some C++ apps. I
am still seeing a couple issues though (with both the gcc 3.4.4
toolchain from snapgear and with a 4.1.2 toolchain I built):

When building cxxtest I get the following errors:

ucfront-g++ arm-linux-g++ -msoft-float  -c -O1   -pipe -fno-common
-fno-builtin -Wall  -Dlinux -D__linux__ -Dunix  -DEMBED -nostdinc++ -o
stdm++.o stdm++.cxx
stdm++.cxx:1:18: stdm++: No such file or directory
stdm++.cxx:4: error: `MATT' has not been declared
stdm++.cxx:4: error: expected constructor, destructor, or type
conversion before '(' token
stdm++.cxx:4: error: expected `,' or `;' before '(' token
stdm++.cxx:21: error: `MATT' has not been declared
stdm++.cxx:21: error: expected constructor, destructor, or type
conversion before '::' token
stdm++.cxx:21: error: expected `,' or `;' before '::' token
stdm++.cxx:34: error: `MATT' has not been declared
stdm++.cxx:35: error: `int operator<<(char*)' must have an argument of
class or enumerated type
stdm++.cxx:35: error: `int operator<<(char*)' must take exactly two
arguments
stdm++.cxx: In function `int operator<<(char*)':
stdm++.cxx:36: error: invalid use of `this' in non-member function
stdm++.cxx:36: error: `fprintf' undeclared (first use this function)
stdm++.cxx:36: error: (Each undeclared identifier is reported only once
for each function it appears in.)
stdm++.cxx: At global scope:
stdm++.cxx:41: error: `MATT' has not been declared
stdm++.cxx:41: error: expected constructor, destructor, or type
conversion before "MATT"
stdm++.cxx:41: error: expected `,' or `;' before "MATT"
make[6]: *** [stdm++.o] Error 1
make[5]: *** [libs] Error 2

And if I try to build iperf I get the following:

ucfront-g++ arm-linux-g++ -msoft-float   -O1   -pipe -fno-common
-fno-builtin -Wall -Dlinux -D__linux__ -Dunix -DEMBED -nostdinc+ + -g
-fno-common -fno-builtin -o iperf -O1   -pipe -fno-common -fno-builtin
-Wall  -Dlinux -D__linux__ -Dunix  -DEMBED    -DHAVE_CONFIG_H Client.o
Extractor.o Launch.o List.o Listener.o Locale.o PerfSocket.o ReportCSV.o ReportDefault.o Reporter.o Server.o Settings.o SocketAddr.o gnu_getopt.o
gnu_getopt_long.o main.o service.o sockets.o stdio.o tcp_window_size.o
../compat/libcompat.a -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic
/usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/lib/soft- float/libsupc++.a
../compat/libcompat.a(Thread.o): In function `thread_start':
Thread.c:(.text+0xc0): undefined reference to `pthread_create'
../compat/libcompat.a(Thread.o): In function `thread_run_wrapper':
Thread.c:(.text+0x208): undefined reference to `pthread_detach'
/usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/lib/soft- float/libsupc++.a(eh_alloc.o): (.rodata._ZZ18__gthread_active_pvE20__gthread_active_ptr+0x0):
undefined reference to `pthread_create'
/usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/lib/soft- float/libsupc++.a(eh_alloc.o):
In function `__cxa_allocate_exception':
../../../../../libstdc++-v3/libsupc++/eh_alloc.cc:139: undefined
reference to `pthread_create'
/usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/lib/soft- float/libsupc++.a(eh_alloc.o):
In function `__cxa_free_exception':
../../../../../libstdc++-v3/libsupc++/eh_alloc.cc:162: undefined
reference to `pthread_create'
/usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/lib/soft- float/libsupc++.a(eh_globals.o): (.rodata._ZZ18__gthread_active_pvE20__gthread_active_ptr+0x0):
undefined reference to `pthread_create'
/usr/local/lib/gcc/arm-linux/3.4.4/../../../../arm-linux/lib/soft- float/libsupc++.a(eh_globals.o):
In function `__cxa_get_globals':
../../../../../libstdc++-v3/libsupc++/eh_globals.cc:123: undefined
reference to `pthread_create'
/usr/local/lib/gcc/arm-linux/3.4.4/soft-float/libgcc.a(unwind- sjlj.o):unwind-sjlj.c:(.text+0xbc):
more undefined references to `pthread_create' follow
collect2: ld returned 1 exit status
make[7]: *** [iperf] Error 1

Do these two apps build correctly for you with the Snapgear toolchain?
If so what vendor/platform are you using so I can compare the settings?




_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev


_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev


---
WorkWare Systems Pty Ltd
W: www.workware.net.au
P: +61 434 916 185
F: +61 7 3102 9221
E: [EMAIL PROTECTED]

Attachment: cxxtest.diff
Description: Binary data



_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to