以前、以下の記事にてwxPython PhoenixをArmadillo-640にインストールする方法をご紹介しました。
Armadillo640へのwxPython Phoenix(Python3に対応したwxPython)のインストール
上記記事ではeMMCをブートディスクとする環境ではダウンロードファイルに対して容量が足りず、
インストールを完了できないとしていました。
しかしながら、インストールの過程で多量のファイルが必要となるものの、
実行環境そのものはそれほど大容量とはならないため、
at-debian-builderを使ってwxPython Phoenixをインストール済のルートファイルシステムをビルドすれば、
Armadillo-600のeMMC上でwxPythonを動作させることが出来ます。
この記事では、そのために必要な手順をご紹介します。
at-debian-builderの準備
以下のページより、at-debian-builderをATDE上にダウンロードしてください。
Armadillo-640 開発用ツール
以下のコマンドでat-debian-builderを展開してください。
[ATDE ~]$ tar xf at-debian-builder-[VERSION].tar.gz
以下のコマンドでArmadillo-600シリーズ用の設定ファイルディレクトリへ移動してください。
[ATDE ~]$ cd at-debian-builder-[VERSION]/a600_resources/resources
このディレクトリ内にある、「packages」と「fixup」というファイルを編集します。
インストールパッケージの設定
packagesをviで編集し、wxPython Phoenixのインストールに必要なパッケージを追加します。
どこに追加しても問題ありませんが、以下の例では末尾に追記する形を取っています。
# List of packaes will install in the debootstrap chroot environment. # A line start with # is comment. Separate packages name with new-line or space. #Init systemd systemd-sysv (中略) #wxpython3.0 python3 python3-pip python3-numpy libgtk2.0-dev libgtk-3-dev libjpeg-dev libtiff-dev libsdl1.2-dev libgstreamer-plugins-base1.0-dev libnotify-dev freeglut3 freeglut3-dev libsm-dev libwebkitgtk-dev libwebkitgtk-3.0-dev
wxPython Phoenixのインストール
wxPython PhoenixはDebianパッケージではないので、Python3-pipを使ってインストールします。
at-debian-builderでのルートファイルシステムアーカイブのビルド実行時にPython3-pipのインストールを行わせるために、fixupを以下のように編集します。
#!/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PKGS=$(cat /resources/packages | grep -v ^# | xargs) cp /resources/sources.list /etc/apt/sources.list export DEBIAN_FRONTEND=noninteractive apt-key adv --keyserver pgp.nic.ad.jp --recv-keys 3874DA771B351757 apt-get -y update apt-get -y install $PKGS (python3-pipをインストールしてからでないと、pip3 installコマンドを実行できないので、 「apt-get -y install $PKGS」よりも後に入力して下さい) ------ここから----------------- #wxpython3.0 pip3 install pathlib2 pip3 install wxpython ------ここまで----------------- #Setup locales locale-gen sed -i 's/# ja_JP.UTF-8 UTF-8/ja_JP.UTF-8 UTF-8/' /etc/locale.gen (後略)
ルートファイルシステムアーカイブのビルド
at-debian-builder-[VERSION]ディレクトリ直下に移動し直して、
下記コマンドを実行してください。
[ATDE ~]$ sudo ./build.sh a600
完了までに数時間を要するのでお気を付け下さい。
また、かならずATDEがインターネットに接続出来ている状態で実行してください。
ルートファイルシステムアーカイブの書き込み
ビルドしたルートファイルシステムアーカイブをArmadillo-640へ書き込んでください。
書き込み方はマニュアルをご参照ください。
イメージファイルの書き換え方法
以上で、wxPython PhoenixがArmadillo-640にインストールされます。
参考情報
インストール後のeMMCの使用可能容量は、検証環境では1.4GBとなっており、
同じArmadillo-640を11/24時点での最新のインストールディスク(install-disk-sd-a600-20201030.img)で初期化した場合の2.6GBよりも1.2GB少なくなりました。
標準のインストールディスクで初期化した直後: root@armadillo:~# df -h Filesystem Size Used Avail Use% Mounted on udev 10M 0 10M 0% /dev tmpfs 100M 1.5M 99M 2% /run /dev/mmcblk0p2 3.3G 553M 2.6G 18% / tmpfs 250M 0 250M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 250M 0 250M 0% /sys/fs/cgroup /dev/mmcblk0gp0 128K 128K 0 100% /opt/license tmpfs 50M 0 50M 0% /run/user/0 wxPythonをインストールしたルートファイルシステムを書き込んだ直後: root@armadillo:~# df -h Filesystem Size Used Avail Use% Mounted on udev 10M 0 10M 0% /dev tmpfs 100M 1.8M 98M 2% /run /dev/mmcblk0p2 3.3G 1.8G 1.4G 58% / tmpfs 250M 0 250M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 250M 0 250M 0% /sys/fs/cgroup /dev/mmcblk0gp0 128K 128K 0 100% /opt/license tmpfs 50M 0 50M 0% /run/user/0