交叉编译SGUClient For OpenWrt - dafeiyoung/sguclient GitHub Wiki

此页面主要叙述如何交叉编译OpenWrt路由器上使用的SGUClient。 如果你需要了解使用源代码编译SGUClient,以得到各种Linux系统平台可用的SGUClient二进制文件,请看 Ubuntu编译SGUClient

一. 获取SGUClient最新源代码

你需要先获取SGUClient的最新源代码。推荐使用Git:

git clone https://github.com/dafeiyoung/sguclient.git

然后切换到sguclient\sguclient-OpenWrt-LuCI目录,这里存放着SGUClient OpenWrt版本(with LuCI)的源代码。

二. 获取OpenWrt SDK

首先准备一台运行Linux x64操作系统的PC。笔者使用的是Deepin x64。 然后到OpenWrt官方下载页下载你需要的对应路由器CPU架构的OpenWrt SDK压缩包。笔者使用的SDK版本是15.05。 下载后,解压,并放在Linux PC任意位置(请注意下图只是个例子)。 openwrt-SDK

三. 安装编译IPK的必要工具和依赖

sudo apt-get update
sudo apt-get install git-core build-essential libssl-dev libncurses5-dev unzip gawk
sudo apt-get install subversion mercurial
sudo apt-get install ccache

网上有很多编译IPK的教程,你也可以看看,都通用的。 如果需要修改SGUClient LuCI配置页中英文翻译信息,你还需要使用po2lmo工具。参考这个文章技巧十四

四. 拷贝SGUClient的源代码目录进SDK

sguclient\sguclient-OpenWrt-LuCI目录下面的sguclient目录整个拷贝到SDK/package目录。 拷贝完成后,目录结构如下图所示。 拷贝SGUClient的源代码目录进SDK 拷贝SGUClient的源代码目录进SDK2

五. 编译SGUClient

打开终端,切换到SDK根目录,执行make package/sguclient/compile即可编译出IPK(位于SDK/bin/[架构]/packages/base目录)。 编译IPK 编译IPK2 _*注意:如果你使用高版本SDK(例如LEDE 17),你需要在SDK目录先运行./scripts/feeds update以及./scripts/feeds install -a补齐欠缺的支持库,否则会因为缺少支持库而无法编译。_

六. 安装IPK

将得到的IPK传到路由器进行安装即可。