Fedora 25 交叉编译小米路由器mini OpenWrt 适用的 BaiduPCS

fedora 版本

本机信息,输入:

1
uname -a

显示:

1
Linux localhost.localdomain 4.8.6-300.fc25.x86_64 #1 SMP Tue Nov 1 12:36:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

发行版信息,输入:

1
cat /etc/fedora-release

显示:

1
Fedora release 25 (Twenty Five)

SDK 准备

OpenWrt官网下载对应的SDK,我这里是14.07版本(小米路由器mini, MT7260A, Pandora SDK Plantform, Base on OpenWrt BARRIER BREAKER (14.09, r512))

下载后解压:

1
tar -xvf OpenWrt-SDK-ramips-for-linux-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2.tar.bz2

为方便使用我将解压得到的文件夹重命名:

1
mv OpenWrt-SDK-ramips-for-linux-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2 OpenWrt_14.07

进入SDK文件夹:

1
cd OpenWrt_14.07

编译环境准备

输入下两行命令安装:

1
2
sudo dnf update
sudo dnf install gcc-c++ ncurses-devel openssl-devel python subversion ccache -y

在SDK目录下(即此处我重命名为OpenWrt_14.07的),依次执行下列命令:

1
2
3
4
cd package
git clone https://github.com/GangZhuo/BaiduPCS.git
cd ..
make config

出现:

1
2
...
Image configuration (IMAGEOPT) [Y/n]

输入y,回车,出现:

1
2
...
BaiduPCS...... BaiduPCS (PACKAGE_BaiduPCS) [M/n/y/?]

输入m,回车(M指生成ipk包),接下来执行编译:

1
make V=99 package/BaiduPCS/openwrt/compile

最后编译成功的ipk在SDK目录下(这里ramips和SDK对应的处理器型号有关)

1
OpwnWrt_14.07/bin/ramips/packages/base/

FAQ

Q: 小米路由器mini在安装上述步骤生成的ipk时出现以下错误信息

1
2
3
Collected errors:
* pkg_hash_fetch_best_installation_candidate: Packages for BaiduPCS found, but incompatible with the architectures configured
* opkg_install_cmd: Cannot install package BaiduPCS.

A: 参照PandoraBox尝试安装ipk不成功,解决方法,即在 /etc/opkg.conf 追加以下内容

1
2
3
arch all 100
arch ramips_24kec 200
arch ramips 300

其它

Ubuntu编译参见Ubuntu 使用Openwrt SDK交叉编译ipk包过程全纪录(超多图)

修改历史

  • 20170106 初稿
  • 20170324 修改格式,添加FAQ,并上传