Thanks.  That fixed the cxxtest apps.  I'm still somewhat confused on
iperf though as iperf is built using configure.  Shouldn't configure and
ucfront* take care of setting up the linker flags (among other things)
for me? 

Thanks,
Lance

Matthew Natalier wrote:
> 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]
>
>
>

_______________________________________________
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