Hi Francesco,
It looks like you are missing a reference to libsup++.a. It must be
missing from your cxxlibs. You can add it with something like the
following:
CXXLIBS += $(shell $(CXX) -print-file-name=libsupc++.a)
It should already be there however and the fact that it isn't is a
bit of a worry.
What version of the uClinux dist are you using?
What version of the arm compiler are you using?
What arch are you building for?
I have been testing on 20070130 version of the uClinux-dist on an arm
platform (not armnommu). If you are not using this version then your
mileage may vary.
Here is my compiler:
Reading specs from /usr/local/lib/gcc/arm-linux/3.4.4/specs
Configured with: ../configure --target=arm-linux --disable-shared --
prefix=/usr/local --with-headers=/home/gerg/new-wave.ixdp425/
linux-2.4.x/include --with-gnu-as --with-gnu-ld --enable-multilib
Thread model: posix
gcc version 3.4.4
Also I noticed you are using -lpthread. I am not sure if this is
going to work. STLport appears to link against the wrong pthreads at
the moment, and I haven't had a chance to fix it yet.
Cheers
Matt
On 08/02/2007, at 8:29 PM, Francesco Lodi wrote:
Alle 00:32, giovedì 8 febbraio 2007, Matthew Natalier ha scritto:
These should show how to set up build lines for building c++ apps
with STLport (which is the standard C library used in the uClinux-
dist). But these are broken at the moment - I'll send a patch in
later.
I didn't knew nothing about STL...
I was thinking c++ support was in uClibc and that some features
like string
was simply missing... now all is a bit more clear...
This is what you need to do.
Step 1
[...]
I have followed the steps, selected STLport to compile, make a
lib_clean and
lib_only and modified my app Makefile.
But now I have a lot of linking error about the following undefined
reference:
ucfront-g++
arm-linux-g++ -L/home/francesco/DataRec/uClinux-dist/lib/STLport/
lib -o
datarec datarec.o modbus.o led.o
gestione_seriale.o -lpthread -lm -Wl,-Bstatic -lstdc++ -Wl,-Bdynamic
datarec.o: In function `DataRec::ControllaUSB()':
/home/francesco/DataRec/uClinux-dist/include/STLport/stl/_new.h:92:
undefined
reference to `operator delete(void*)'
datarec.o: In function `std::__node_alloc<false, 0>::_S_chunk_alloc
(unsigned
int, int&)':
/home/francesco/DataRec/uClinux-dist/include/STLport/stl/_new.h:91:
undefined
reference to `operator new(unsigned int)'
/home/francesco/DataRec/uClinux-dist/lib/libstdc++.a(dll_main.o):
In function
`std::__Named_exception::~__Named_exception()':
dll_main.cpp:(.text+0x1c): undefined reference to
`std::exception::~exception()'
/home/francesco/DataRec/uClinux-dist/lib/libstdc++.a(dll_main.o):
In function
`std::__stl_throw_overflow_error(char const*)':
dll_main.cpp:(.text+0x6f4): undefined reference to
`__cxa_allocate_exception'
dll_main.cpp:(.text+0x740): undefined reference to `operator delete
(void*)'
dll_main.cpp:(.text+0x760): undefined reference to `__cxa_throw'
/home/francesco/DataRec/uClinux-dist/lib/libstdc++.a(dll_main.o):
In function
`.L606':
dll_main.cpp:(.text+0x794): undefined reference to
`__gxx_personality_sj0'
/home/francesco/DataRec/uClinux-dist/lib/libstdc++.a(dll_main.o):
(.gnu.linkonce.d._ZTISt17__Named_exception+0x0): undefined
reference to
`vtable for __cxxabiv1::__si_class_type_info'
/home/francesco/DataRec/uClinux-dist/lib/libstdc++.a(dll_main.o):
(.gnu.linkonce.d._ZTISt17__Named_exception+0x8): undefined
reference to
`typeinfo for std::exception'
Also the examples in cxxtest fail with the same linker errors.
Maybe there is a particular way to compile the STL lib? I have read
the README
in /lib/STLport but I didn't found any usefull hint. I have also
seen that
there are many config file in stlport/config but I can't figure out
how to
use them.
Any help is obvioulsy appreciated! :-D
Best regards
Francesco
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
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
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev