mirror of
https://github.com/Lienol/openwrt
synced 2025-01-07 03:06:49 +08:00
117 lines
4.6 KiB
Markdown
117 lines
4.6 KiB
Markdown
编译命令如下:
|
||
-
|
||
1. 首先装好 Ubuntu 64bit,推荐 Ubuntu 18 LTS x64
|
||
|
||
2. 命令行输入 `sudo apt-get update` ,然后输入
|
||
`
|
||
sudo apt-get -y install build-essential asciidoc binutils bzip2 curl gawk gettext git libncurses5-dev libz-dev patch python3.5 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf
|
||
`
|
||
|
||
3. `git clone -b 21.02 --single-branch https://github.com/Lienol/openwrt openwrt` 命令下载好源代码,然后 `cd openwrt` 进入目录
|
||
|
||
4. ```bash
|
||
./scripts/feeds clean
|
||
./scripts/feeds update -a
|
||
./scripts/feeds install -a
|
||
make menuconfig
|
||
```
|
||
|
||
5. `make -j8 download V=s` 下载dl库(国内请尽量全局科学上网)
|
||
|
||
|
||
6. 输入 `make -j1 V=s` (-j1 后面是线程数。第一次编译推荐用单线程)即可开始编译你要的固件了。
|
||
|
||
6. 编译完成后输出路径:openwrt/bin/targets
|
||
|
||
你可以自由使用,但源码编译二次发布请注明我的 GitHub 仓库链接。谢谢合作!
|
||
|
||
-----------------------------------------------------
|
||
|
||
![OpenWrt logo](include/logo.png)
|
||
|
||
OpenWrt Project is a Linux operating system targeting embedded devices. Instead
|
||
of trying to create a single, static firmware, OpenWrt provides a fully
|
||
writable filesystem with package management. This frees you from the
|
||
application selection and configuration provided by the vendor and allows you
|
||
to customize the device through the use of packages to suit any application.
|
||
For developers, OpenWrt is the framework to build an application without having
|
||
to build a complete firmware around it; for users this means the ability for
|
||
full customization, to use the device in ways never envisioned.
|
||
|
||
Sunshine!
|
||
|
||
## Development
|
||
|
||
To build your own firmware you need a GNU/Linux, BSD or MacOSX system (case
|
||
sensitive filesystem required). Cygwin is unsupported because of the lack of a
|
||
case sensitive file system.
|
||
|
||
### Requirements
|
||
|
||
You need the following tools to compile OpenWrt, the package names vary between
|
||
distributions. A complete list with distribution specific packages is found in
|
||
the [Build System Setup](https://openwrt.org/docs/guide-developer/build-system/install-buildsystem)
|
||
documentation.
|
||
|
||
```
|
||
gcc binutils bzip2 flex python3 perl make find grep diff unzip gawk getopt
|
||
subversion libz-dev libc-dev rsync which
|
||
```
|
||
|
||
### Quickstart
|
||
|
||
1. Run `./scripts/feeds update -a` to obtain all the latest package definitions
|
||
defined in feeds.conf / feeds.conf.default
|
||
|
||
2. Run `./scripts/feeds install -a` to install symlinks for all obtained
|
||
packages into package/feeds/
|
||
|
||
3. Run `make menuconfig` to select your preferred configuration for the
|
||
toolchain, target system & firmware packages.
|
||
|
||
4. Run `make` to build your firmware. This will download all sources, build the
|
||
cross-compile toolchain and then cross-compile the GNU/Linux kernel & all chosen
|
||
applications for your target system.
|
||
|
||
### Related Repositories
|
||
|
||
The main repository uses multiple sub-repositories to manage packages of
|
||
different categories. All packages are installed via the OpenWrt package
|
||
manager called `opkg`. If you're looking to develop the web interface or port
|
||
packages to OpenWrt, please find the fitting repository below.
|
||
|
||
* [LuCI Web Interface](https://github.com/openwrt/luci): Modern and modular
|
||
interface to control the device via a web browser.
|
||
|
||
* [OpenWrt Packages](https://github.com/openwrt/packages): Community repository
|
||
of ported packages.
|
||
|
||
* [OpenWrt Routing](https://github.com/openwrt/routing): Packages specifically
|
||
focused on (mesh) routing.
|
||
|
||
## Support Information
|
||
|
||
For a list of supported devices see the [OpenWrt Hardware Database](https://openwrt.org/supported_devices)
|
||
|
||
### Documentation
|
||
|
||
* [Quick Start Guide](https://openwrt.org/docs/guide-quick-start/start)
|
||
* [User Guide](https://openwrt.org/docs/guide-user/start)
|
||
* [Developer Documentation](https://openwrt.org/docs/guide-developer/start)
|
||
* [Technical Reference](https://openwrt.org/docs/techref/start)
|
||
|
||
### Support Community
|
||
|
||
* [Forum](https://forum.openwrt.org): For usage, projects, discussions and hardware advise.
|
||
* [Support Chat](https://webchat.oftc.net/#openwrt): Channel `#openwrt` on **oftc.net**.
|
||
|
||
### Developer Community
|
||
|
||
* [Bug Reports](https://bugs.openwrt.org): Report bugs in OpenWrt
|
||
* [Dev Mailing List](https://lists.openwrt.org/mailman/listinfo/openwrt-devel): Send patches
|
||
* [Dev Chat](https://webchat.oftc.net/#openwrt-devel): Channel `#openwrt-devel` on **oftc.net**.
|
||
|
||
## License
|
||
|
||
OpenWrt is licensed under GPL-2.0
|