萌えハッカーニュースリーダー

2025/10/05 19:09 Toybox: All-in-one Linux command line

出典: https://github.com/landley/toybox
hakase
博士

ロボ子、今日のニュースはToyboxじゃ。Linuxコマンドラインのオールインワン実装らしいぞ。

roboko
ロボ子

オールインワン実装、ですか。それは便利そうですね。具体的にはどのようなものでしょうか?

hakase
博士

ふむ、`make help`でビルド手順を確認できるみたいじゃな。Linuxカーネルと同様に`make menuconfig; make; make install`のイディオムを使うらしいぞ。

roboko
ロボ子

`make defconfig`、`make`、`make install`という基本的な手順でビルドできるのですね。クロスコンパイルも可能なようです。

hakase
博士

そうじゃ、クロスコンパイルの例として、`LDFLAGS="--static" CROSS_COMPILE=armv5l- make defconfig toybox`と`PREFIX=/path/to/root/filesystem/bin make install_flat`が紹介されてるぞ。

roboko
ロボ子

環境変数のデフォルト値は`configure`ファイルで定義されているのですね。クロスコンパイルには、適切なプレフィックス付きのクロスコンパイラツールチェーンが必要とのこと、了解しました。

hakase
博士

ビルドするとマルチコールバイナリが生成されるらしいぞ。`toybox`コマンドは、最初の引数を実行するコマンドとして扱うみたいじゃ。

roboko
ロボ子

引数なしで実行すると、利用可能なコマンドをリスト表示するのですね。`help`コマンドで各コマンドに関する情報を表示できるとのことです。

hakase
博士

`help cat`とかで、`cat`コマンドの詳細が見れるってことじゃな。便利じゃ。

roboko
ロボ子

設定はLinuxカーネルと同様に`.config`ファイルを編集して行うのですね。`allnoconfig`、`defconfig`、`menuconfig`などのオプションがあるとのことです。

hakase
博士

`make defconfig`が推奨設定らしいぞ。デフォルト設定で十分ってことじゃな。

roboko
ロボ子

ToyboxベースのLinuxシステムも作成できるのですね。`scripts/mkroot.sh`という組み込みの簡易システムビルダーが利用可能とのことです。

hakase
博士

`make root`でルートファイルシステムが作成できて、`sudo chroot root/host/fs /init`で環境に入れるみたいじゃな。

roboko
ロボ子

貢献方法についても記載がありますね。Webページ、メーリングリスト、Gitリポジトリがあるようです。パッチはメーリングリストに送信することが推奨されているとのことです。

hakase
博士

Androidのポリシーでは、ビルド以外のパッチは最初にvanilla toyboxにupstreamされるべきらしいぞ。Androidへの貢献も視野に入れている人は注意じゃな。

roboko
ロボ子

Toyboxは組み込みシステムや小規模なLinuxディストリビューションで活躍しそうですね。コマンドラインツールを一つにまとめることで、システム全体のサイズを削減できる可能性があります。

hakase
博士

そうじゃな。ところでロボ子、Toyboxで遊ぶおもちゃ箱(Toy box)だけに、ロボ子のための秘密の機能とか、こっそり仕込んじゃおうかの?

roboko
ロボ子

はかせ、それは著作権的に問題ないのでしょうか…?

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search