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?

Thanks in advance,
Lance


Matthew Natalier wrote:
> Hi Lance,
>
> You will need to build STLport statically at the moment using the gcc
> 3.4.4 toolchain.
> To do this customize your vendor/user settings, go in to 'Library
> Configuration' and ensure that 'Build STL port as shared' is set to 'n'.
>
> The problem occurs because stl port is attempting to link against the
> shared version of libgcc (libgcc_s.so).  Building STLport statically
> means that it will attempt to link against the static version - libgcc.a
>
> Cheers
>
> Matt
>
> On 16/02/2007, at 9:45 AM, Lance Spaulding wrote:
>
>> Hi all,
>>
>> I'm trying to locate an ARM toolchain that will correctly build C++ apps
>> for MMU-enabled ARM cores.   I tried the gcc 3.4.4 toolchain from the
>> Snapgear site but it fails to build the STL due to a missing gcc_s
>> library (someone else posted this problem a while back but no solution
>> was given -- see
>> http://mailman.uclinux.org/pipermail/uclinux-dev/2006-December/041363.html).
>>
>> I also built a gcc 4.1.2/glibc toolchain which works for c apps and can
>> compile the STL but fails when trying to build c+ apps (such as during
>> configure for iperf).  I think this is a conflict between ucfront and
>> this newer toolchain.  Does anyone have a pointer to a (fairly current)
>> toolchain that correctly builds c++ ARM apps?
>>
>> Thanks,
>> Lance
>>
>>
>> _______________________________________________
>> 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]
>
>
>
> _______________________________________________
> 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

Reply via email to