Thank you a lot It seems it has work. but it hasn't decreased the size of (my main + libstdc++.so ) compared to (my main + libstdc++.a) As to the strip instruction, it was great , it helped me decrease the size very much. Thank you a lot. I just don't understand what strip really does=> are there any risks that my main run not well after that ?
I did: arm-linux-strip -s mymain Thank you Harris, have a good day Dan Le Lundi 3 D�cembre 2001 16:22, Harris Landgarten a �crit : > Dan, > > I am doing the same as you. You have to have the gcc-295.3 source to > build the shared library. Follow the instructions in Chris Rutters' > toolchain faq under building the toolchain. All of these steps were > already done in the cross tar you installed but you need the gcc source > so you can recompile for g++ with shared libraries. Assuming you have > the source installed you have to cd to gcc-2.95.3 directory and > > ./configure --target=arm-linux --prefix=/usr/local/arm/2.95.3 > --with-headers=<path to /linux/include> --enable-shared=yes > --enable-languages=c++ > > make > make install > > When you are done you should have a libstdc++-3-libc6.1-2-2.10.0.so file > in /usr/local/arm/2.95.3/arm-linux/lib > > Once you do this you normal cross compiles should use the shared > library. BTW make sure you strip you program of symbols. You will save > alot of space. You have to put the main .so lib on you embedded device > in /lib and run ldconfig for your new smaller program to run. > > On Mon, 2001-12-03 at 03:32, Dan ABITBOL wrote: > > Hello Philip, Hello Harris > > > > In fact , I m cross compiling and cross linking my main programm for an > > arm-linux proceessor. > > the arm-linux linker links my main with the the static libstdc++ of the > > arm-toolchain. its size averages 2.5 Mb > > > > My work is to downsize my main. So I wanted to link it with the dynamic > > version of lthe libstdc++ against the static one . > > > > So as I had only the static one , I made all I described in my former > > emails to have the dynamic one . > > So was it the right way ? I dont have ./configure tools ... > > How can I make out ? what shoul i do to built the dynamic library from > > the static one and what do I have to write in my makefile to link my main > > with it against the static one that the linker automatically calls ? > > > > PS: what PDC means ? > > > > Thank you both for your help and advice . > > Dan > > > > Le Vendredi 30 Novembre 2001 20:36, Philip Blundell a �crit : > > > In message <[EMAIL PROTECTED]>, Dan ABITBOL > > > > writes: > > > >4/ then juste make > > > >arm-linux-g++ -shared -fpic -ldl -o libstdc++.x.x.x.so *.o > > > >the you ll have the shared one ....whic is libstdc++.x.x.x.so > > > > > > That doesn't create a shared library. You get a dynamic object, but > > > using -fpic during final link doesn't stop everything inside the > > > library being PDC. > > > > > > Incidentally, it isn't necessary to manually unpack the archive. You > > > can just do "gcc -Wl,--whole-archive libxx.a ...". > > > > > > >Could you also help me? once we have our shared library, how I do to > > > > link my main with the dynamic one and prevent the arm-linux-linker > > > > from linking with the static one ? > > > > > > GNU ld should always prefer a shared object if you have one. > > > > > > p. > > > > > > > > > > > > _______________________________________________ > > > http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm > > > Please visit the above address for information on this list. > > _______________________________________________ > http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm > Please visit the above address for information on this list. _______________________________________________ http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm Please visit the above address for information on this list.
