FORUMS
Remove All Ads from XDA

[TOOLCHAINS] [ARM/ARM64] [GCC 7.2.1] GNU and Linaro - September 15th, 2017

11,321 posts
Thanks Meter: 34,059
 
Post Reply Email Thread
Introduction

Hello everyone, these are some arm and arm64 toolchains I have compiled using a script created by @USBhost and modified by @frap129 and me. I know the concept of toolchains is not a new one, as there have been many specialized/optimized variants. However, some people may want a pure/unaltered toolchain for certain projects. That's what this will be, a generic/simple toolchain configuration. These will be done on a semi-nightly basis. They have been tested on up to date Arch Linux and Ubuntu 17.04 systems. If you know how to use scripts or cross compile, feel free to skip straight to the downloads!


Configuration

The GNU (standard or unlabeled) toolchains are built from GNU's latest gcc-7-branch. The Linaro toolchains are compiled from the linaro-local/gcc-7-integration-branch branch.

These are the additional components:
Code:
binutils 2.29.1
gmp 6.1.2
mpfr 3.1.5
mpc 1.0.3
isl 0.18
bionic r15c
Latest Linux Kernel headers (7318413077a5141a50a753b1fab687b7907eef16)
These toolchains are statically linked so they should work on any 64-bit Linux system; let me know if there are any issues with this.


Build script

These were compiled with crosstool-NG, which is extremely versatile but a little complex for the average user. Instead, I offer a build script in this repo to compile very similar toolchains (they will not be statically linked but that's no issue if you are only compiling on your machine and they won't have bionic). It has been modified heavily from the original repo to support two different architecture configurations (more can easily be added upon request).

To learn more about the script, give the README a glance, as it will be more up to date than the thread.


Using the toolchains

Please see the README.


Issues?

If you run into any issues with either using or compiling these toolchains, please do one of the following:
  • Open an issue on Github. Use the toolchains repo for issues with using, use the script repo for issues with compiling.
  • Make a post on here.
In both cases, I will require a detailed explanation of your system configuration, what you are compiling, and a FULL terminal output; without these, your problem will be ignored.


Credits
  • @USBhost: For the initial script and permission to make this thread
  • @frap129: For his modifications to the script
  • @MSF Jarvis: For testing the arm option
  • @kantjer: For testing the Ubuntu versions on Linux Mint
The Following 41 Users Say Thank You to nathanchance For This Useful Post: [ View ]
 
 
15th May 2017, 10:02 AM |#2  
nathanchance's Avatar
OP Recognized Developer / Recognized Contributor
Flag Mesa, AZ
Thanks Meter: 34,059
 
More
Reserved
The Following 3 Users Say Thank You to nathanchance For This Useful Post: [ View ]
15th May 2017, 02:54 PM |#3  
Recognized Contributor
Flag Pune
Thanks Meter: 4,676
 
More
Great stuff
The Following 2 Users Say Thank You to akhilnarang For This Useful Post: [ View ] Gift akhilnarang Ad-Free
15th May 2017, 04:20 PM |#5  
frap129's Avatar
Recognized Developer
Thanks Meter: 3,411
 
Donate to Me
More
Dude it took me days to get arm to build because of weird errors and you just added a flag that builds it?
The Following User Says Thank You to frap129 For This Useful Post: [ View ]
15th May 2017, 04:46 PM |#6  
nathanchance's Avatar
OP Recognized Developer / Recognized Contributor
Flag Mesa, AZ
Thanks Meter: 34,059
 
More
Quote:
Originally Posted by frap129

Dude it took me days to get arm to build because of weird errors and you just added a flag that builds it?



Yeah, all I did was target arm-linux-gnueabi and build the arm Linux headers and everything compiled just fine.
16th May 2017, 03:26 PM |#7  
neobuddy89's Avatar
Recognized Contributor
Flag APQ8084
Thanks Meter: 18,864
 
Donate to Me
More
So linaro or standard, what's recommended?
And what flags do you suggest to use for ROM and kernel?
The Following 2 Users Say Thank You to neobuddy89 For This Useful Post: [ View ] Gift neobuddy89 Ad-Free
16th May 2017, 05:31 PM |#8  
zainifame's Avatar
Senior Member
Flag Kotabumi
Thanks Meter: 96
 
More
Any support for x86/x86_64 platform?
16th May 2017, 06:00 PM |#9  
nathanchance's Avatar
OP Recognized Developer / Recognized Contributor
Flag Mesa, AZ
Thanks Meter: 34,059
 
More
Quote:
Originally Posted by neobuddy89

So linaro or standard, what's recommended?
And what flags do you suggest to use for ROM and kernel?

I personally use Linaro given all the work they do for the arm architecture. These are the flag I use for my kernel. I'd love to claim credit for them but @kwoktopus helped me with most of them

Quote:
Originally Posted by zainifame

Any support for x86/x86_64 platform?

I do not currently plan on it but if there is enough demand I can consider it.
The Following 2 Users Say Thank You to nathanchance For This Useful Post: [ View ]
16th May 2017, 06:04 PM |#10  
zainifame's Avatar
Senior Member
Flag Kotabumi
Thanks Meter: 96
 
More
Quote:
Originally Posted by The Flash

I personally use Linaro given all the work they do for the arm architecture. These are the flag I use for my kernel. I'd love to claim credit for them but @kwoktopus helped me with most of them



I do not currently plan on it but if there is enough demand I can consider it.

Hope u support the x86/x86_64 platform
16th May 2017, 06:04 PM |#11  
USBhost's Avatar
Recognized Contributor
Flag u:r:usbhost:s0
Thanks Meter: 6,373
 
Donate to Me
More
Quote:
Originally Posted by The Flash

I do not currently plan on it but if there is enough demand I can consider it.

X86_64 is theoretically already supported.
All you need to do is Target x86_64 and choose what version then done.

Like what was done for arm
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes