GCC 4.7.4 release 6
Alan Buckley (167) 234 posts |
The RISC OS GCCSDK developers are pleased to announce the GNU Compiler This release updates GCC 4.7.4 release 5 with the latest improvements The changes include - Improve shared library loading speed. The release can be downloaded from the riscos.info repositories using Our thanks go to all those who have contributed to this release. About GCC for RISC OS GCC for RISC OS is a complete, free and fully-featured compiler solution |
Paolo Fabio Zaino (28) 1915 posts |
Nice Alan (and GCCSDK developers), thanks! :) |
Rob Heaton (274) 516 posts |
Well done to all involved, goes well with a book on C that I received for Christmas! |
Dom Beesley (3243) 4 posts |
I have some questions: Is this still the best version to use? I couldn’t locate anything but I may be search the wrong places. The link above is broken it should be https://www.riscos.info/downloads/gccsdk/gcc-4.7.4-release-6/ possibly? Should it run on RO 3.71 – it complains about the ARMEABISupport module being missing, if I load manually gcc crashes. Alternatively is there a good guide or pointers on how to set up a cross-compiler, in particular for generating modules. I know I’ll need CMunge to be working but not sure how to build the right gcc from sources |
Paolo Fabio Zaino (28) 1915 posts |
@ Dom
AFAIK yes.
AFAIK, no.
The alternative way is still to use GCC on RO 5 (or GCCSDK on Linux), target ARM 26bit and use CMunge yes.
Why do you need to build GCC from sources? To force it to work on a RiscPC/A7000 running RO 3.71? That is goind to be a painful path, and even if you succeed it will take forever to build stuff. Why not use RO 5 on a Raspberry Pi 4? OR GCCSDK on a Linux box? As for the release yes the last release still able to fully target ARM 26 and older RISC OS is GCC 4.7.4 (I may be wrong on that thought). As for the process to build modules, check the documentation you’ll find inside the !GCC directory. HTH, good luck! |
Dom Beesley (3243) 4 posts |
Thanks Paolo, that’s a help.
Certainly not to run on 3.71 unless I have to! I’d much prefer to cross-compile from WSL or Linux. So what is gccsdk vs normal gcc? Where do I get it and are there build/install instructions for making it cross compile from Linux? I did manage to get Select working again on my setup (I’ve bought but never installed it) I got as far as getting gcc from the above link to work but then I couldn’t find a version of make that would work with the examples. Again, I did find a link to something promising looking in the packages folders on riscos.info but they were broken. I just found this https://www.stevefryatt.org.uk/risc-os/build-tools/environment is this a better way to proceed? Is gcc 4 really the latest gcc that will work? Thanks again Dom D |
Paolo Fabio Zaino (28) 1915 posts |
@ Dom
GCCSDK is a project to allow cross compiling from Linux. Excellent project and idea.
AFAIR it’s on riscos.info as well. Instructions to install it from Steve in the link you’ve posted.
AFAIK yes.
As a starting point yes, but then you can also compile GCC 8 and GCC 12 (or 10) IIRC. However, before going all the way, make sure they can still target your device. AFAIR GCC 4.7.4 can still target ARM 26. As for compiling modules the instructions are similar, obviousy avoid setting it to use VFP, ensure it’s not trying to produce an ELF32 etc… HTH |
Andrew McCarthy (3688) 615 posts |
Dom, you can find the original instructions here, courtesy of the Wayback Machine. http://web.archive.org/web/20230318004418/http://www.riscos.info/index.php/GCCSDK Sadly, riscos.info is still partially broken. Good luck. |
Paolo Fabio Zaino (28) 1915 posts |
@ Andrew Did you mean this instead? http://web.archive.org/web/20210722052712/https://www.riscos.info/index.php/GCCSDK_Development The link you provided is a link to the old introduction to GCCSDK, not the installation instructions as you’ve mentioned JFYI. However, please ensure you test the resources before sharing them. The old instructions have caused some issues in the past, IIRC they assume some old Ubuntu or Debian release (In all honesty I forgot now), so some of the dependecies is (or maybe) wrong. While Steve’s instructions are a lot better and more up-to-date. Posting this mostly for future users looking for same info. |
Andrew McCarthy (3688) 615 posts |
I’m sure Dom will either find the extra information helpful or not. |