-
From a youtube comment:
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
Unfortuantely, Tilck cannot be built with TinyCC out of the box. In addition to the requirement for the GAS assembler, the project uses some new C11 features like atomics that are not supported by TinyCC, along with a bunch of GCC extensions. With enough effort, it would be possible to make Tilck's C files to build with TinyCC, but a full build certainly will need more than that: Gas, CMake, Bash and several other tools need to work too. Also, Tilck uses linker scripts and I'm not sure TinyCC's embedded linker can support that. It's true that TinyCC was able to build Linux 2.4, but the build probably used several other tools, not just the compiler alone. I guess that the shortest path for self-hosting would be to make the GCC toolchain current used + cmake and bash to work on Tilck. To do that, Tilck will probably need more syscalls to support glibc (currently apps use libmusl) and will need to support dynamic linking as well. But, that's not part of project's goals at the moment. Tilck is a small project aiming at embedded systems and the educational world. There is a lot to play with, in particular around filesystems, block devices, page cache etc. before getting to point of considering self-hosting. |
Beta Was this translation helpful? Give feedback.
Unfortuantely, Tilck cannot be built with TinyCC out of the box. In addition to the requirement for the GAS assembler, the project uses some new C11 features like atomics that are not supported by TinyCC, along with a bunch of GCC extensions. With enough effort, it would be possible to make Tilck's C files to build with TinyCC, but a full build certainly will need more than that: Gas, CMake, Bash and several other tools need to work too. Also, Tilck uses linker scripts and I'm not sure TinyCC's embedded linker can support that. It's true that TinyCC was able to build Linux 2.4, but the build probably used several other tools, not just the compiler alone.
I guess that the shortest path for…