交叉编译openwrt php,Openwrt 交叉编译(Crosscompile)及使用SDK生成ipk安装包

  • Post author:
  • Post category:php


Openwrt交叉编译

首先我先介绍下什么是交叉编译:

交叉编译,简单的说就是,就是在一个平台上生成另一个平台上的可执行文件,举个例子,我我用我的电脑(x86_64平台)编译出路由器(mips-AR71XX)上可以执行的二进制文件,要进行交叉编译首先就要有对应平台的编译器。

Openwrt的交叉编译并不复杂。

第一步,你需要得到toolchain(工具链),我个人理解这个就相当于编译器

如何得到toolchian呢?有两种方法

1.到openwrt下载(要注意平台,比如我的路由器是tp-wr703n,所对应的平台就是AR71XX,就要到http://downloads.openwrt.org/barrier_breaker/14.07/ar71xx/generic/下载  OpenWrt-Toolchain-ar71xx-for-mips_34kc-gcc-4.8-linaro_uClibc-0.9.33.2.tar.bz2

2.自己编译,在编译固件时可以看到有编译toolchain的选项(如果不知道我在说什么的话,先学习下openwrt编译)
581bd39fc5361205cda6066cccac1acd.png
得到工具链后将其解压

第二步,设置环境变量

这里只有两个变量需要设置

1.将工具链中的bin文件夹加入PATH

2.添加一个STAGING_DIR  变量,将其指向放toolchain的文件夹,比如我把toolchain解压到了/home/yj/openwrt/mips-linux-gcc/下,就把STAGING_DIR 的值赋为/ho