This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

gcc-arm-8.3-2019.03-aarch64-arm-linux-gnueabihf

Hello, I am trying to compile gcc-arm-8.3-2019.02 arm-linux-gnueabihf from source for an aarch64 host because there isn't a precompiled version available from arm: https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads/8-3-2019-03

I've followed the instructions on https://wiki-archive.linaro.org/ABE to get ABE building the toolchain from manifests supplied on the arm site.The problem is none of these manifests seem to be equivalent to the the ones used to generate the precompiled toolchains (based on the "Configured with" flags of the precompiled and manually compiled builds of gcc).

For example, gcc-arm-src-snapshot-8.3-2019.03-manifest.txt only includes the dependencies url and revision, not the flags. The gcc-arm-arm-linux-gnueabihf-abe-manifest.txt is missing data (eg. gcc_filesec) and includes build flags that are in disagreement with the manifest included in the x86_64 precompiled toolchain that has worked for me on older hardware, eg --with-fpu=vfpv3-d16 --with-mode=thumb (neon and arm respectively in the precompiled version). Finally, the manifest included in that precompiled toolchain (8.3-2019.03-x86_64-arm-linux-gnueabihf-manifest.txt) only includes the dependencies *_configure flags but it appears to be in a different format than ABE expects (ABE has gcc_stage1_flags and gcc_stage2_flags but this manifest has four stages for GCC, gcc1_configure through gcc4_configure).

Has anyone had any luck compiling these old toolchains on newer hardware?

Parents
  • Okay, I was finally able to compile a toolchain that works on the specific device I'm targeting. The trick was reconciling the differences between the various manifests provided and finding the right commit of ABE to use with said manifest. I am beyond out of my element so I'm not sure if it's 1:1 to the official precompiled toolchain but I haven't run into any issues yet.

    Hopefully the moderators will forgive me one more link in the hopes that it will save someone else having to revisit this particular rabbit hole. I've documented the steps I used to build a working toolchain and posted the blob produced in this repo: github.com/.../gcc-arm-8.3-aarch64

Reply
  • Okay, I was finally able to compile a toolchain that works on the specific device I'm targeting. The trick was reconciling the differences between the various manifests provided and finding the right commit of ABE to use with said manifest. I am beyond out of my element so I'm not sure if it's 1:1 to the official precompiled toolchain but I haven't run into any issues yet.

    Hopefully the moderators will forgive me one more link in the hopes that it will save someone else having to revisit this particular rabbit hole. I've documented the steps I used to build a working toolchain and posted the blob produced in this repo: github.com/.../gcc-arm-8.3-aarch64

Children