libstdc++-v3: the free-standing subset compiles

This commit is contained in:
Lephenixnoir 2021-06-13 18:07:27 +02:00
parent 9f33074c10
commit 954e3ccd08
No known key found for this signature in database
GPG key ID: 1BBA026E13FC0495

View file

@ -60,21 +60,29 @@ For some reason OpenLibm installs its headers in the `include/openlibm` subfolde
% for x in "$SRC"/*.h; do ln -s "$x" "$DST/${x#$SRC/}"; done
```
After this, come back to the build folder, run the build command for libstdc++-v3, and hope it works out. I recommend not using `-j` as it makes error messages and logs more linear.
After this, come back to the build folder, run the build command for libstdc++-v3, and hope it works out. I recommend not using `-j` as it makes error messages and logs more linear, and the library builds very fast anyway.
```
% make all-target-libstdc++-v3
```
Since this will likely fail, check out `sh3eb-elf/libstdc++-v3/config.log` for configure errors, or other log files if you make it past the configuration step. `config.log` has many details on programs that failed to compile; not all failures to build are fatal for the configuration step, but some are.
If it fails, check out `sh3eb-elf/libstdc++-v3/config.log` for configure errors, or other log files if you make it past the configuration step. `config.log` has many details on programs that failed to compile; not all failures to build are fatal for the configuration step, but some are.
If it succeeds, install.
```
% make install-strip-target-libstdc++-v3
```
### Current problems
Hard limits:
Hard problems:
* `<stdio.h>` is not complete yet.
* None. The free-standing subset compiles.
Suspected problems:
Things that look like they could be involved in problems:
* Anything that is not in the fxlibc can fail to link.
* The conftest programs are built without `-ffreestanding`, which means autoconf cannot really link stuff. This is probably not too much of a problem, because it's cross-compiled anyway so there's nothing to do with a linked program, but who knows.