AArch64 ILP32 Toolchain

From LEAP Wiki
Revision as of 21:48, 29 February 2016 by Michael Huang (Talk | contribs)

Jump to: navigation, search
Idea.png
This is a draft!
More details are coming soon.

Introduction

This page describes the details about using ILP32 AArch64 toolchain on LEAP.

Requirements

  • Latest LEAP kernel (4.3+)
  • Docker
  • Docker image with AArch64 ILP32 Toolchain

Using ILP32 toolchain

1. You need LEAP running on ARM64 platform: Installation instructions

2. Install the latest LEAP kernel (4.3+) and Docker

yum install kernel docker

3. Since docker is not able to start using systemctl start docker for some reasons, we can still start docker manually

systemctl start docker-storage-setup && screen -dm docker daemon

4. Fetch our AArch64 ILP32 docker image from DockerHub


Sources and Patches

GCC

Source: Linaro GCC 4.9.4

Patches:

Licenses: GNU GPLv2, GNU GPLv3

Description: This is Linaro's 4.9.4 GCC release from June 2015. The above two patches are there to allow building for the aarch64_ilp32 target.

Binutils

Source: Binutils (commit 9fde51ed303ea3ecbaa7c0084ea417e775a5db29)

Patches:

Licenses: GNU GPLv2, GNU GPLv3

Description: This is Binutils from the master branch. The above patch allows building for the aarch64_ilp32 target.

GLIBC

Source: GLIBC thunderx-ilp32-32timetoff_t branch (commit 574af3313a602be1197bbc3b5ea9b88b58063244)

Patches:

Licenses: GNU GPLv2

Description: This is a WIP GLIBC with the ilp32 patches applied. The above patch allows building for the aarch64_ilp32 target.

Building ILP32 toolchain manually

Extra links