Plamo Linux 日記

Plamo Linux に関係することだけではなく,最近は一般的なコンピュータやガジェット関係についても記載してます.

Qbilinux 開発について(その47): aarch64 用バイナリ作成と arm 32bit/64bit 用クロスコンパイル環境

ぼちぼちと Plamo Linux 6.x のソース一式からブランチして,Qbilinux という linux ディストリビューションを作成.

いつまで続くのか.

いじってる Qbilinux のホームページは https://qbilinux.org/ に,ビルドスクリプトは https://github.com/qbilinux/qbilinux,バイナリは https://qbilinux.org/pub/ 以下にあります.

x86/x86_64/armv7l 用のバイナリを更新しましたが,ラズパイ4 上に 64bit 用の開発環境を構築して引き続き aarch64 用のバイナリを更新しています.

久しぶりに aarch64 環境をいじるなので苦労しまくり.昨年の4月くらいから全く更新してなかったんだよな.

一部ライブラリが古すぎたり,依存関係がいろいろあったりでパッチ処理では対応できず,手作業でチマチマと作業しています.

その過程でいろんな不具合があったりするので,適宜,x86/86_64 環境のほうへのフィードバックも行っています.

ようやく OS の基本パッケージは作成し終えて,これから X 環境周りに取り掛かるって感じですが,ある程度のパッケージが作成できた時点で公開バイナリも更新したいと思います.はい.

それと並行して,過去に作成していた x86_64 上で動作する arm 32bit/64bit 用クロスコンパイル環境を復活させました.https://qbilinux.org/pub/tools/ 以下にバイナリを転がしておきます.

ラズパイ公式サイトの https://github.com/raspberrypi/tools/tree/master/arm-bcm2708 以下でも同じようなものを配布していたりしますが,何となく拾ってきたバイナリを使うのは気持ち悪いので自前でコンパイルした環境を用意しています.

github.com

cross_aarch64-0.0-x86_64-1.txz が aarch64 用,cross_armhf-0.0-x86_64-1.txz が arm 用のコンパイラになります.ともに /opt 以下にインストールされます.

一応,このバイナリを使ってラズパイ用の armv6/armv7/aarch64 カーネルなどがビルドできる程度は試していますので,問題なく動作するかなとは思っています.クロスコンパイル環境のビルドスクリプトは少しまとめる作業が必要な感じなので,その作業が終わり次第 github の方に上げるようにします.

とりあえず最近の作業はそんな感じ.

少しペースを上げてリリース作業をしないと,glibc の新しいバージョンが出てしまうなぁと思ってる今日この頃です.