So isn't GCC POSIX compliant? I mean a static build of gcc executable and
nothing more (no make, awk or anything)
The only thing that GCC does is read and write files
The C library shouldn't be part of the equation since GCC can compile many
C libraries
Another compiler (besides clang) won't work since I expect C++

So what's the actual difficulty in running a program that just reads and
writes files?



On Sat, Apr 8, 2023 at 2:47 PM Gregory Nutt <spudan...@gmail.com> wrote:

> On 4/7/2023 9:02 PM, Victor Suarez Rovere wrote:
> > Hi everyone!
> > Considering that NuttX is POSIX compliant, can gcc or clang be run on
> NuttX?
>
> I was waiting to see if someone who has actually tried this would
> respond.  I haven't  tried to build a GCC toolchain on NuttX and can't
> say that it is impossible, but it certainly would be a big challenge!
>
>   * *GCC Components*.  GCC consists of several components including
>     binutils and several other prerequisite libraries (GMP, MPFR, MPC).
>     A Bash shell and GNU make would need needed too.
>
>   * *Other dependencies*:  awk, GNU make, Perl, Python3, Flex, Bison,
>     and perhaps automake.  Maybe gzip, bzip2, and tar if you build from
>     tarballs.  Documentation needs Texinfo.  And lots of other things
>     that I forgot.
>
>   * *GDB*.  GDB is usually considered to be part of the toolchain too.
>     But it would not be possible to build GDB because it depends on
>     ptrace which not supported by NuttX.
>
>   * *C Library*.  GCC and C-libraries are very intimately entangled.
>     NuttX has its own C libary.  I suspect that the integration with GCC
>     and the NuttX C library would be somewhat challenging as well.
>
>   * *Other Unsupported Interfaces*.  Several interfaces that depend on
>     an MMU (fork, full mmap) are not supported and could also be an issue.
>
>   * FLAT build?  Or Kernel build?  Each has it own challenges.
>
>   * *Delivery*.  GCC normally comes as several Linux executables and
>     libraries that use several other shared libraries.  How would you
>     package and deliver a GCC toolchain on NuttX?  Would you build it
>     into the FLASH image or put it into a huge monolithic ELF executable
>     on some mounted volume?
>
> Although I cannot say it is impossible, I would not be optimistic
> starting a GCC port to NuttX.  I would think that a smaller, less
> feature rich C compiler would be a reasonable job.
>

Reply via email to