Fixes shared library linking (XCC)
If you try to make a hello-world c++ library:
$ x86_64-ucb-akaros-gcc -fPIC -o lib.o -c lib.cc
$ x86_64-ucb-akaros-gcc -shared -o lib.so lib.o
You'll get the error:
... 4.9.2/crtendS.o(.eh_frame); no .eh_frame_hdr table will be created.
Some sites suggested a problem with config.gcc, such as
http://forum.osdev.org/viewtopic.php?t=25489 , though the problem was
n't crtstuff. Or at least that didn't help me. Though it did make me
look at the config.gcc, and I attempted to make ours more like Linux's.
The main change was tmake_file="t-slibgcc" , which is needed to make
a shared version of libgcc_s.so. That in turn needed some fixups in
config.host, the most important being the softfloat business where we
didn't include x86_64 akaros.
Rebuild your toolchain.
2 files changed