I downloaded crosstool-ng-1.24.0, not yet installed. I want build cross toolchain for ARM target, but I need specific components versions run on target ARM board, for which the toolchain generates code, Linux kernel 2.6.26.5, gnu gcc 4.1.2, glibc-2.5 Since crosstool-ng toolchain have no these components, how I can add and install it? I checked toolchain sources and documents but didn't find any instruction on that. The 'packages' folder contain separate components, but in form of patches. I would prefer download the required components and put these locally, in folder. How to make these correctly?
Asked
Active
Viewed 698 times
0
-
I see the old versions have AddToolVersion.sh script that allow add a new version to the toolchain component. – minto Aug 24 '19 at 08:03
-
Yes, they got rid of this because it was too hard to support that many versions (with patches) and most people want the newest. It is much more likely things won’t build cleanly and you need to make small patches. – artless noise Aug 24 '19 at 12:18
-
The current `ct-ng` has a 4.9.4 compiler and you can force the glibc to be 2.5 compatible so that the API remains identical and you can use an older binary with an upgraded library. There are [list of gcc API changes](https://abi-laboratory.pro/?view=timeline&l=glibc) and very little changes between versions. Each glibc has a symver that tries to make it compatible. If you use an actual glibc2.5, you may have some very severe known vulnerabilities. – artless noise Aug 26 '19 at 21:03
-
I will try old version that supports all target components, kernel, gcc, glibc . I find that v 1.3.1. seems support all these parts. – minto Aug 27 '19 at 17:01
-
If you are not network connected this maybe fine. I am concerned someone will look at this and miss out on many glibc security fixes. – artless noise Aug 28 '19 at 13:45
-
Just for future reference. As of 2017, any old version is pretty much not working. crosstool-ng older versions used to get kernel from `ftp://ftp.kernel.org/` which was terminated. So if you want to use old version. You have to tweak with the source code to set it to a valid download source – Mobrine Hayde Aug 18 '20 at 20:47