Skip to content

WYC-2020/lede

Repository files navigation

欢迎来到Lean的Openwrt源码仓库!

English

注意:

  1. 要用 root 用户 git 和编译!!!
  2. 国内用户编译前最好准备好梯子
  3. 默认登陆IP 192.168.2.1, 密码 无

Ubuntu:

首次编译:

  1. 首先装好 Ubuntu 64bit,推荐 Ubuntu 20.04 LTS x64

  2. 命令行分别输入

sudo apt-get update

sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
bzip2 ccache clang cmake cpio curl device-tree-compiler flex gawk gettext gcc-multilib g++-multilib \
git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libfuse-dev libglib2.0-dev libgmp3-dev \
libltdl-dev libmpc-dev libmpfr-dev libncurses-dev libncurses-dev libpython3-dev libreadline-dev \
libssl-dev libtool llvm lrzsz genisoimage msmtp ninja-build p7zip p7zip-full patch pkgconf python3 \
python3-pyelftools python3-setuptools qemu-utils rsync scons squashfs-tools subversion swig texinfo \
uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev aria2 
  1. 拉取源码
git clone https://github.com/WYC-2020/lede

cd lede
  1. 拉取第三方库
./scripts/feeds update -a

./scripts/feeds install -a

make menuconfig

5.下载第三方库源码(国内请尽量全局科学上网)

make -j8 download V=s
  1. 编译
make -j1 V=s

二次编译:

cd lede

git pull

./scripts/feeds update -a && ./scripts/feeds install -a

make defconfig

make -j8 download

make -j$(($(nproc) + 1)) V=s

重新配置:

rm -rf ./tmp && rm -rf .config

make menuconfig

make -j$(($(nproc) + 1)) V=s

输出路径:

bin/targets

WSL或WSL2进行编译:

由于wsl的PATH路径中包含带有空格的Windows路径,有可能会导致编译失败,请用以下命令进行编译

首次编译:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin make -j1 V=s 

二次编译:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin make -j$(($(nproc) + 1)) V=s

macOS 原生系统进行编译:

1、安装xcode

xcode-select --install  or Command_Line_Tools_for_Xcode_11.5

2、安装Homebrew

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

3、安装编译环境

brew install coreutils findutils gawk grep gnu-getopt gnu-tar wget diffutils git-extras quilt svn make ncurses pkg-config  aria2 qemu

4、更新环境变量

echo 'export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/opt/findutils/libexec/gnubin:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/opt/gawk/libexec/gnubin:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/opt/grep/libexec/gnubin:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/opt/gnu-getopt/bin:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/opt/gnu-tar/libexec/gnubin:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/opt/make/libexec/gnubin:$PATH"' >> ~/.bashrc
echo 'export PATH="/usr/local/opt/ncurses/bin:$PATH"' >> ~/.bashrc

5、生效环境变量

source ~/.bashrc

6、可能遇到问题:

SSL certificate problem: certificate has expire in macOS
Rename /etc/ssl/cert.pem to something else. (I suggest /etc/ssl/cert.pem.org)
Download the latest cacert.pem from https://curl.se/docs/caextract.html
Rename it to cert.pem
Copy it to /etc/ssl/cert.pem

HASH更新

第一种方法(自动生成):

1、 修改Makefile中让此项写成以下这样,(如果不加上skip,那么在第三步填充哈希值时会直接删除"PKG_MIRROR_HASH:="这一行)

PKG_MIRROR_HASH:=skip

2、 下载软件包(如软件包名为hello,包的Makefile放在package/network/services/hello下)

make package/network/services/hello/download V=s

3、 填充哈希值

make package/network/services/hello/check FIXUP=1 V=s

第二种方法(手动生成):

1、 首先在软件包的Makefile中让此项空着,如下:

PKG_MIRROR_HASH:=

然后下载软件包(如软件包名为hello,包的Makefile放在package/network/services/hello下)

make package/network/services/hello/download V=s

2、 在第一步完成之后会在dl目录下发现一个新模块相关的压缩包,直接使用以下命令来生成哈希值,如:

sha256sum 包名.tar.xz

3、 将第二步生成的哈希值填充到Makefile的PKG_MIRROR_HASH即可

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors