Files
openwrt/docs/cross_compilation_notes.md
2026-03-22 00:54:57 -07:00

37 lines
1.5 KiB
Markdown
Executable File

# Cross-Compilation Notes
## GL-iNet Flint 2 (GL-MT6000)
- **SoC**: MediaTek MT7986 (Filogic 830)
- **CPU**: Quad-core ARM Cortex-A53 @ 2.0GHz
- **Architecture**: `aarch64`
- **Target**: `mediatek/filogic`
- **SDK Path**: `../openwrt-sdk-mediatek-filogic_gcc-14.3.0_musl.Linux-x86_64`
- **Toolchain**: `gcc-14.3.0_musl`
### Compiling for Flint 2
1. Source the SDK environment (if using the full SDK wrapper) or add the staging_dir toolchain to PATH.
2. Export `STAGING_DIR`:
```bash
export STAGING_DIR=/home/sapient/Projects/OpenWRT/openwrt-sdk-mediatek-filogic_gcc-14.3.0_musl.Linux-x86_64/staging_dir
```
3. Add toolchain bin to PATH:
```bash
export PATH=$PATH:$STAGING_DIR/toolchain-aarch64_cortex-a53_gcc-14.3.0_musl/bin
```
4. Compile with `aarch64-openwrt-linux-gcc`.
## GL-iNet Flint 1 (GL-AX1800)
- **SoC**: Qualcomm IPQ6000
- **CPU**: Quad-core ARM Cortex-A53 @ 1.2GHz
- **Architecture**: `aarch64`
- **Target**: `ipq807x/generic` or `ipq807x/ipq60xx` (check OpenWRT target mapping)
### Compiling for Flint 1
- Similar to Flint 2, this is an `aarch64` architecture.
- CAUTION: while the architecture is the same (`aarch64`), kernel headers and libc versions might differ if using a different OpenWRT version.
- Ideally, obtain the SDK for `ipq807x` if the application relies on kernel interfaces or specific libraries. for generic userspace apps, the Flint 2 toolchain *might* work but is not guaranteed.
## General Notes
- Both devices are `aarch64`.
- Generic static binaries compiled for `aarch64-linux-musl` should likely work on both.