OpenWrt Buildroot – インストール

OpenWrt Buildroot は、OpenWrtをビルドするための ツールチェイン です。ツールチェインをインストールする際には、スタンドアローン環境か、VMwareQemuなどの仮想環境上に構築したGNU/Linux ディストリビューションにインストールすることをおすすめします。Cygwin環境では恐らく動作しません。また、~BSDやMacOSX 環境ではイメージのビルドを行うことができますが、動作は保証されていません。自由にトライして結果をdevlistに報告してみてください。また、トラブルシューティングも忘れずにお読みください。

  • ソースコードをダウンロードする際に、350 MBのディスクスペースが必要になります。
  • OpenWrtをクロスコンパイルする際に、3-4 GBのディスクスペースが必要になります。
1. 全ての作業を non-root ユーザーで行ってください!
2. 全てのコマンドは<buildsystem root> ディレクトリで実行してください。例えば、<buildsystem root>~/openwrt/trunk/になります。
3. フルパスにスペースを含んだディレクトリ内でビルドを行わないでください。
  1. OpenWrtのソースコードをダウンロードするために、subversion (次回よりsvnと略)をインストールします。また、コンパイル環境を整えるために、build toolsのインストールも行います。:
    sudo apt-get install subversion build-essential
  2. svn経由でOpenWrtのソースコードをダウンロードします。
    mkdir ~/openwrt
    cd openwrt
    svn co svn://svn.openwrt.org/openwrt/trunk/
    cd trunk
    • 上記の作業により、'trunk'ディレクトリが作成され、これがOpenWrtソースコードのメインディレクトリになります。
    • trunk リビジョン R27988の時点で14,382個のファイルがあり、合計サイズは約150MiBです。
    • これはOpenWrt Buildroot systemも含みます。
    • for more information about Downloading Sources.
  3. feeds スクリプトを使用して、ソフトウェア・フィードのダウンロードおよびインストールを行います。(オプション)
    ./scripts/feeds update -a
    ./scripts/feeds install -a
    • リビジョン 7367の場合、この時点でtrunk-ディレクトリは 26,650 ファイル、合計サイズ 302 MiBになります。(もし個別にパッケージをインストールする場合は右記のコマンドを実行してください: ./scripts/feeds install PACKAGENAME)
  4. 以下のコマンドのいづれかを実行することで、OpenWrtをビルドしている環境上で足りないパッケージが列挙されます。:
    make defconfig
    make prereq
    make menuconfig
    • 上記の作業を行うことで、buildrootを使用してOpenWrtをビルドするために、足りないパッケージが列挙されます。
  5. package management commandsを使用して、足りないパッケージのインストールを行います。詳細は以下のテーブルと例を参照してください。
  6. ビルド または Build OpenWrt on Mac OS X 10.7 Lion に進んでください。

:!: 設定およびmake実行後、(このページで説明されています), trunk-ディレクトリは244,451 ファイル、合計サイズ約3.2GiBになるでしょう!

以下は、Linux ディストリビューション別に記載された、ビルドするための必要条件になる各パッケージ名の一覧表です。

Prerequisite Debian Suse Red Hat OS X (via MacPorts) Fedora NetBSD
asciidoc asciidoc asciidoc asciidoc asciidoc asciidoc ?
bash bash ? ? bash ? bash
binutils binutils binutils binutils binutils binutils ?
bzip2 bzip2 bzip2 bzip2 bzip2 bzip2 ?
fastjar fastjarfastjar libgcj fastjar libgcj ?
flex flex? ? flex flex ?
g gcc-c ?
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2021/10/15 09:06
  • by bobafetthotmail