# Welcome to Lean's git source of OpenWrt and packages I18N: [English](README_EN.md) | [简体中文](README.md) ## Official Channels If you have technical questions for discussion or sharing, feel free to join the following channels: 1. QQ Group: *OpenWRT Firmware Technical Research Group*, Group Number is `891659613`. Join the group: [Link](https://jq.qq.com/?_wv=1027&k=XL8SK5aC "Op固件技术研究群"). - [Click to download QQ client](https://im.qq.com/pcqq). 2. Telegram Group: *OpenWRT Firmware Technical Research Group*. Join the group: [Link](https://t.me/JhKgAA6Hx1 "OP 编译官方大群"). 3. Rockchip **RK3568** precompiled firmware release (including H68K): [Click to download](https://github.com/coolsnowwolf/lede/releases/tag/20220716).
4. Rockchip **RK3588** precompiled firmware release (including H68K): [Click to download](https://github.com/coolsnowwolf/lede/releases/tag/20230609). ## Notice 1. **Never compile OpenWRT as `root`** 2. If you are living in mainland China, please make sure you could visit the **REAL** Internet. 3. Default login IP is `192.168.1.1`, password is `password`. ## How to Compile 1. Install a Linux distribution, Debian 11 or Ubuntu LTS is recommended. 2. Install dependencies: ```bash sudo apt update -y sudo apt full-upgrade -y sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \ bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib \ git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev \ libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz \ mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pyelftools \ libpython3-dev qemu-utils rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip \ vim wget xmlto xxd zlib1g-dev python3-setuptools ``` 3. Clone the source code, update `feeds` and configure: ```bash git clone https://github.com/coolsnowwolf/lede cd lede ./scripts/feeds update -a ./scripts/feeds install -a make menuconfig ``` 4. Download libraries and compile firmware > (`-j` is the thread count, single-thread is recommended for the first build): ```bash make -j8 download V=s make -j1 V=s ``` These commands are supposed to compile the source code successfully. All source code of R23 is included, including IPK. You can use this source code freely, but please link this GitHub repository when redistributing. Thank you for your cooperation! Rebuild: ```bash cd lede git pull ./scripts/feeds update -a ./scripts/feeds install -a make defconfig make download -j8 make V=s -j$(nproc) ``` If reconfiguration is need: ```bash rm -rf ./tmp && rm -rf .config make menuconfig make V=s -j$(nproc) ``` Build artifacts will be outputted to `bin/targets` directory. ### If you are using WSL/WSL2 as your build environment WSL's `PATH` potentially contain Windows paths with spaces, which may cause compilation failure. Please add the following lines to your local environment profiles before compiling: ```bash # Update and reload your profile, ~/.bashrc for example. cat << EOF >> ~/.bashrc export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH" EOF source ~/.bashrc ``` NTFS-formatted drives mounted to a WSL distribution will be case-insensitive by default. This will cause the following error when compiling in WSL/WSL2: ```txt Build dependency: OpenWrt can only be built on a case-sensitive filesystem ``` A simple solution is to create a case-sensitive directory for the repository before `git clone`: ```powershell # Open a terminal as administrator PS > fsutil.exe file setCaseSensitiveInfo