This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
development:toolchain [2018/01/10 12:17] preisig [Toolchain] |
development:toolchain [2021/08/04 09:20] (current) |
||
---|---|---|---|
Line 3: | Line 3: | ||
===== Toolchain ===== | ===== Toolchain ===== | ||
However, if for some reasons you want or have to cross-compile a C application, you will find the different | However, if for some reasons you want or have to cross-compile a C application, you will find the different | ||
- | [[ftp://share.netmodule.com/router/public/toolchain | Cross-compilation toolchains ]] on our FTP server. | + | [[https://share.netmodule.com/router/public/toolchain | Cross-compilation toolchains ]] on our FTP server. |
The toolchains consists of a compiler ([[https://gcc.gnu.org/ | GNU Compiler Collection (GCC)]] version 4.4.5), | The toolchains consists of a compiler ([[https://gcc.gnu.org/ | GNU Compiler Collection (GCC)]] version 4.4.5), | ||
a assembler and linker ([[https://www.sourceware.org/binutils/ | GNU binutils]]) and | a assembler and linker ([[https://www.sourceware.org/binutils/ | GNU binutils]]) and | ||
Line 11: | Line 11: | ||
The following Cross-Compilation toolchains are available: | The following Cross-Compilation toolchains are available: | ||
- | * [[ftp://share.netmodule.com/router/public/toolchain/netbox-ppc/ | Netbox-PPC]] / NB1600, NB2700, NB2710, NB3700 and NB3710 | + | * [[https://share.netmodule.com/router/public/toolchain/netbox-ppc/ | PowerPC]] / NB1600, NB2700, NB2710, NB3700 and NB3710 |
- | * [[ftp://share.netmodule.com/router/public/toolchain/netbolt-arm/ | Netbolt-ARM]] / NB2800, NB3701, NB3711 and NB3800 | + | * [[https://share.netmodule.com/router/public/toolchain/netbolt-arm/ | ARM]] / NB1800, NB1810, NB2800, NB3701, NB3711 and NB3800 |
- | * [[ftp://share.netmodule.com/router/public/toolchain/netbird-arm / | Netbird-ARM]] / NB800 | + | * [[https://share.netmodule.com/router/public/toolchain/netbird-arm/ | ARM]] / NB1601, NB800 |
Line 21: | Line 21: | ||
==== Getting Started ==== | ==== Getting Started ==== | ||
- | 1. Download and install the toolchain on your Linux x86 PC | + | 1. Download and install the corresponding toolchain from above on your Linux x86 PC |
<code bash> | <code bash> | ||
- | wget ftp://share.netmodule.com/router/public/toolchain/netbox-ppc/toolchain-ppc-4.4.5-x86_64.tar.bz2 | + | wget https://share.netmodule.com/router/public/toolchain/netbox-ppc/toolchain-ppc-4.4.5-x86_64.tar.bz2 |
tar -xvf toolchain-ppc-4.4.5-x86_64.tar.bz2 -C /opt | tar -xvf toolchain-ppc-4.4.5-x86_64.tar.bz2 -C /opt | ||
export PATH=$PATH:/opt/toolchain-ppc-4.4.5-x86_64/bin | export PATH=$PATH:/opt/toolchain-ppc-4.4.5-x86_64/bin | ||
Line 50: | Line 50: | ||
3. Compile it | 3. Compile it | ||
+ | |||
+ | __PowerPC:__ | ||
<code bash> | <code bash> | ||
powerpc-openwrt-linux-gcc -Wall hello.c -o hello | powerpc-openwrt-linux-gcc -Wall hello.c -o hello | ||
+ | </code> | ||
+ | |||
+ | __ARM:__ | ||
+ | <code bash> | ||
+ | arm-openwrt-linux-gcc -Wall hello.c -o hello | ||
</code> | </code> | ||
Line 59: | Line 66: | ||
This example shows you how to compile a program from source. The program in this example is [[https://stedolan.github.io/jq/download/ | jq]] | This example shows you how to compile a program from source. The program in this example is [[https://stedolan.github.io/jq/download/ | jq]] | ||
+ | __PowerPC__ | ||
<code bash> | <code bash> | ||
wget https://github.com/stedolan/jq/releases/download/jq-1.5/jq-1.5.tar.gz | wget https://github.com/stedolan/jq/releases/download/jq-1.5/jq-1.5.tar.gz | ||
Line 64: | Line 72: | ||
cd jq-1.5 | cd jq-1.5 | ||
CC=powerpc-openwrt-linux-gcc ./configure --host=powerpc --disable-maintainer-mode | CC=powerpc-openwrt-linux-gcc ./configure --host=powerpc --disable-maintainer-mode | ||
+ | make | ||
+ | </code> | ||
+ | |||
+ | __ARM__ | ||
+ | <code bash> | ||
+ | wget https://github.com/stedolan/jq/releases/download/jq-1.5/jq-1.5.tar.gz | ||
+ | tar -xzf jq-1.5.tar.gz | ||
+ | cd jq-1.5 | ||
+ | CC=arm-openwrt-linux-gcc ./configure --host=arm --disable-maintainer-mode | ||
make | make | ||
</code> | </code> | ||
Line 77: | Line 94: | ||
===== Oracle Virtual Box Image ===== | ===== Oracle Virtual Box Image ===== | ||
- | For small projects or if you don't have a Linux environement you can also use the very small [[ftp://share.netmodule.com/router/public/toolchain/netbox-ppc/NetModule_NB_PowerPC_Compile_1_3.ova |Virtual Box Image]]. The image uses Tiny Core Linux (http://tinycorelinux.net/). Please read the startup message carefully. This is only valid for the NB1600, NB2700/2710, NB3700/3710. | + | For small projects or if you don't have a Linux environement you can also use the very small [[https://share.netmodule.com/router/public/toolchain/netbox-ppc/NetModule_NB_PowerPC_Compile_1_3.ova |Virtual Box Image]]. The image uses Tiny Core Linux (http://tinycorelinux.net/). Please read the startup message carefully. This is only valid for the NB1600, NB2700/2710, NB3700/3710. |