ディスカッションや共有したい技術的な質問がある場合は、以下のチャンネルにお気軽にご参加ください:
-
QQ グループ: OpenWRT ファームウェア技術研究グループ、グループ番号は
891659613
です。 グループに参加する: リンク。 -
Telegram グループ: OpenWRT ファームウェア技術研究グループ。グループに参加する: リンク。
- OpenWRT を決して
root
としてコンパイルしないこと - 中国本土にお住まいの方は、ぜひ REAL インターネットをご覧ください。
- デフォルトのログイン IP は
192.168.1.1
で、パスワードはpassword
です。
-
Linuxディストリビューションをインストールし、Debian または Ubuntu LTS を推奨します。
-
依存関係をインストールする:
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
-
ソースコードをクローンし、
feeds
を更新し、設定する:git clone https://github.com/coolsnowwolf/lede cd lede ./scripts/feeds update -a ./scripts/feeds install -a make menuconfig
-
ライブラリのダウンロードとファームウェアのコンパイル
(
-j
はスレッドカウント、最初のビルドはシングルスレッドを推奨):make download -j8 make V=s -j1
これらのコマンドは、ソースコードを正常にコンパイルするためのものです。 R23 のソースコードは IPK を含めてすべて含まれています。
このソースコードはご自由にお使いいただけますが、再配布の際はこの GitHub リポジトリをリンクしてください。 ご協力ありがとうございました!
リビルド:
cd lede
git pull
./scripts/feeds update -a
./scripts/feeds install -a
make defconfig
make download -j8
make V=s -j$(nproc)
再設定が必要な場合:
rm -rf ./tmp && rm -rf .config
make menuconfig
make V=s -j$(nproc)
ビルドの成果物は bin/targets
ディレクトリに出力されます。
WSL の PATH
には、Windows のパスが空白で含まれている可能性があり、コンパイルに失敗することがあります。
コンパイルする前に、ローカルの環境プロファイルに以下の行を追加してください:
# 例えば、~/.bashrc などのプロファイルを更新した後、再読み込みを行う。
cat << EOF >> ~/.bashrc
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH"
EOF
source ~/.bashrc
WSL ディストリビューションにマウントされた NTFS フォーマットのドライブは、デフォルトで大文字と小文字が区別されません。 このため、WSL/WSL2 でコンパイルすると、次のようなエラーが発生します:
Build dependency: OpenWrt can only be built on a case-sensitive filesystem
単純な解決策は、git clone
の前に大文字小文字を区別してリポジトリ用のディレクトリを作成することです:
# 管理者としてターミナルを開く
PS > fsutil.exe file setCaseSensitiveInfo <your_local_lede_path> enable
# 大文字と小文字を区別して、このリポジトリを <your_local_lede_path> ディレクトリにクローンする
PS > git clone git@github.com:coolsnowwolf/lede.git <your_local_lede_path>
すでに
git clone
されたディレクトリでは、fsutil.exe
は有効になりません。 大文字小文字の区別はディレクトリの新しい変更に対してのみ有効になります。
-
AppStore から Xcode をインストールする
-
Homebrew をインストールする:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-
Homebrew でツールチェーン、依存関係、パッケージをインストールする:
brew unlink awk brew install coreutils diffutils findutils gawk gnu-getopt gnu-tar grep make ncurses pkg-config wget quilt xz brew install gcc@11
-
システム環境のアップデート:
- MacのIntelシリコンバージョン
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/gnu-getopt/bin:$PATH"' >> ~/.bashrc echo 'export PATH="/usr/local/opt/gnu-tar/libexec/gnubin:$PATH"' >> ~/.bashrc echo 'export PATH="/usr/local/opt/grep/libexec/gnubin:$PATH"' >> ~/.bashrc echo 'export PATH="/usr/local/opt/gnu-sed/libexec/gnubin:$PATH"' >> ~/.bashrc echo 'export PATH="/usr/local/opt/make/libexec/gnubin:$PATH"' >> ~/.bashrc
- MacのAppleシリコンバージョン
echo 'export PATH="/opt/homebrew/opt/coreutils/libexec/gnubin:$PATH"' >> ~/.bashrc echo 'export PATH="/opt/homebrew/opt/findutils/libexec/gnubin:$PATH"' >> ~/.bashrc echo 'export PATH="/opt/homebrew/opt/gnu-getopt/bin:$PATH"' >> ~/.bashrc echo 'export PATH="/opt/homebrew/opt/gnu-tar/libexec/gnubin:$PATH"' >> ~/.bashrc echo 'export PATH="/opt/homebrew/opt/grep/libexec/gnubin:$PATH"' >> ~/.bashrc echo 'export PATH="/opt/homebrew/opt/gnu-sed/libexec/gnubin:$PATH"' >> ~/.bashrc echo 'export PATH="/opt/homebrew/opt/make/libexec/gnubin:$PATH"' >> ~/.bashrc
-
シェルプロファイル
source ~/.bashrc && bash
を再読み込みすれば、Linux のように普通にコンパイルできます。
- このソースコードには、HTTPS トラフィックを監視/キャプチャできるバックドアやクローズドソースアプリケーションは含まれていません。SSL セキュリティはサイバーセキュリティの最後の城です。安全性はファームウェアがすべきことです。
- OpenWRT の開発を学びたいが、何から始めたらいいかわからないですか?自己学習のモチベーションが上がらない?基礎知識が足りない?ズオ氏の初心者 OpenWRT トレーニングコースで一緒に OpenWRT 開発を学びましょう。お申し込みはこちらをクリックしてください。
- QCA IPQ60xx オープンソースリポジトリ: https://github.com/coolsnowwolf/openwrt-gl-ax1800
- OpenWRT アーカイブリポジトリ: https://github.com/coolsnowwolf/openwrt
Yingku R2 - N95/N300 Mini Four-Network HomeLab Server
(紹介ページ - Yingku Technology (support AliPay Huabei)):
このプロジェクトがあなたのお役に立てたのであれば、このプロジェクトの発展を支援するための寄付をご検討ください。