[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
howtos:hardware:arm:gcc_aarch64_cross-compiler [2016/12/17 21:21 (UTC)] – [The end result] grammar correction exaga | howtos:hardware:arm:gcc_aarch64_cross-compiler [2017/08/23 16:56 (UTC)] (current) – [Slackware ARM GCC aarch64-linux cross-compiler for the Raspberry Pi] exaga | ||
---|---|---|---|
Line 3: | Line 3: | ||
=== Preface === | === Preface === | ||
- | I was thinking about the Cortex-A53 64-bit CPU on my Raspberry Pi 3 and why I'm mainly using Slackware ARM 32 bit operating system on it. Then I started to wonder if it would be possible to build an arm64 kernel and modules to run with Slackware ARM. After reading about how this could be achieved it seemed clear that some cross-compiling would be required. Although I have some experience in building Linux kernels, especially for the Raspberry Pi platform, I'd never done any cross-compiling before a week ago. So, this whole concept was brand new to me. | + | I was thinking about the Cortex-A53 64-bit CPU on my Raspberry Pi 3 and why I'm mainly using Slackware ARM 32 bit operating system on it. Then I started to wonder if it would be possible to build an arm64 kernel and modules to run with Slackware ARM. After reading about how this could be achieved it seemed clear that some cross-compiling would be required. Although I have some experience in building Linux kernels, especially for the Raspberry Pi platform, I'd never done any cross-compiling before a week ago (2016-12-15). So, this whole concept was brand new to me. |
- | For my first attempt (and largely based on reading about how other users were doing it) I used an Ubuntu 16.04.1 LTS (64 bit) system to cross-compile an arm64 kernel for the Raspberry Pi 3. However, the results of doing things by this method were somewhat lacking and created many unforeseen errors. Then I remembered something [[http:// | + | For my first attempt (and largely based on reading about how other users were doing it) I used an Ubuntu 16.04.1 LTS (64 bit) system to cross-compile an arm64 kernel for the Raspberry Pi 3. However, the results of doing things by this method were somewhat lacking and created many unforeseen errors. Then I remembered something [[http:// |
As things have turned out, it wasn't //that// difficult. Investing some time into reading about toolchains and how to build cross-compilers was required, as well as testing the results of cross-compiling, | As things have turned out, it wasn't //that// difficult. Investing some time into reading about toolchains and how to build cross-compilers was required, as well as testing the results of cross-compiling, | ||
Line 133: | Line 133: | ||
</ | </ | ||
- | You should see the first $PATH entry is to your installation directory' | + | You should see the first $PATH entry is to your installation directory' |
< | < | ||
Line 304: | Line 304: | ||
=== Installing the arm64 modules === | === Installing the arm64 modules === | ||
- | Once the modules have been built, you have to 'make modules_install' | + | Once the modules have been built, you have to 'make modules_install' |
+ | |||
+ | You could build // | ||
First you need become ' | First you need become ' | ||
Line 310: | Line 312: | ||
< | < | ||
su - | su - | ||
- | export PATH=/ | + | make -j4 modules_install ARCH=arm64 CROSS_COMPILE=aarch64-linux- |
- | make -j 4 modules_install ARCH=arm64 CROSS_COMPILE=aarch64-linux- | + | |
</ | </ | ||