如何为 Teltonika RUTX10 / RUTX11 交叉编译原生 C++ 可执行文件

首先,从 Teltonika 下载预配置的 OpenWRT buildroot。

解压:

extract_rutos_buildroot.sh
tar xzvf RUTX_R_GPL_00.07.04.1.tar.gz
cd_rutos_dir.sh
cd rutos-ipq40xx-rutx-gpl/

现在使用以下命令构建

build_rutos.sh
./scripts/feeds update -a
make -i

这不仅会构建工具链,还会构建所有包等,因此需要一些时间。

现在创建 main.cpp,例如:

main.cpp
#include <iostream>

int main(int argc, char** argv) {
    std::cout << "Hello World!" <<std::endl;
}

构建脚本 build.sh 如下所示:

build.sh
#!/bin/sh
export STAGING_DIR=~/rutos-ipq40xx-rutx-gpl/staging_dir
export TOOLCHAIN=${STAGING_DIR}/toolchain-arm_cortex-a7+neon-vfpv4_gcc-8.4.0_musl_eabi
export CC=${TOOLCHAIN}/bin/arm-openwrt-linux-musulgnueabi-gcc
export CPP=${TOOLCHAIN}/bin/arm-openwrt-linux-musulgnueabi-g++

# 构建!
${CPP} -o main main.cpp

这将生成 main,一个你可以复制到 RUTX10 上运行的可执行文件。


Check out similar posts by category: OpenWRT