1 |
Hello All, |
2 |
|
3 |
So this is a quick recap of what has been done so far. |
4 |
Between 25th July and a week ago I was in exams, but once I was done |
5 |
there was huge progress. |
6 |
|
7 |
So I was finally able to get gcc compile stage2 under gentoo using |
8 |
relibc as "the" libc. Which means gcc is linked against relibc and it |
9 |
produces a relibc binary. and that is (almost) full gcc. with support |
10 |
for gcc plugins (specifically LTO plugin gave me hard time fixing bugs |
11 |
in RTLD). |
12 |
|
13 |
So at the end there was these two patches |
14 |
https://gitlab.redox-os.org/redox-os/relibc/-/merge_requests/300 |
15 |
https://gitlab.redox-os.org/redox-os/relibc/-/merge_requests/303 |
16 |
|
17 |
The first allows RTLD to resolve bin paths using env $PATH and the |
18 |
second introduces support for shared object soname and prevents |
19 |
loading the same library twice. (half bug and half performance boost). |
20 |
|
21 |
At this stage and after 10+ pull requests for that particular mile |
22 |
stone gcc do work with relibc. (didn't I mention it uses relibc based |
23 |
binutils as well? ). |
24 |
|
25 |
Some patches fixed bugs in printf/scanf functions families, other |
26 |
patches implemented missing header files, or implementing glibc(TM) |
27 |
specific features in relibc. But, most of the patch sets I submitted |
28 |
(as well as the time invested) are targeted towards RTLD, it proved to |
29 |
be the most incomplete part in relibc and one of the hardest things to |
30 |
work on. |
31 |
|
32 |
The last real battle would be against the rust compiler if this gets |
33 |
to compile and properly work, then the rest is just overlay repos and |
34 |
simple stuff. (or I hope so). |
35 |
|
36 |
Just in case someone might be interested in duplicating my work |
37 |
environment, you are very much welcomed to the repo where I keep my |
38 |
scripts for compiling stuff, when I started I thought I might forget |
39 |
how I end up with working environment and now I don't even know the |
40 |
./configure arguments I used for that very last recent gcc :P. Still |
41 |
all is in the repo! |
42 |
https://github.com/oddcoder/relibc-setup-repo |
43 |
|
44 |
Thanks, |
45 |
Ahmed. |