ラズパイにRaspberryPi OSを入れるのもいいけど、
UbuntuMateを入れると、いろんなことをさせることができて、
とても頼もしくなる。
ラズパイをUbuntu機として使って、開発機材として使い倒す予定の人が、
ほぼ確実に遭遇する問題。
それが「64bitOSに32bitライブラリをインストールできるか問題」。
ラズパイUbuntuではできない方法
Ubuntuの32bit用のライブラリは、通常だとインストールできないから、
「:i386」を後ろにつけて、インストールするといいっすよ。
これ、多くの人が持っているIntel系のCPUを搭載したパソコンx86_64のやり方。
かつてWindowsを入れていたけど、古くなって、最新のWindowsについていけなくなったので、
今はLinux機として働かせているような、そんなパソコンのやり方。
これ、ラズパイのUbuntuではできません。どうしてもできません。
ラズパイに搭載されているCPUは、ARM社系のARMなので、
CPUの働きが違うのです。だから、使うプログラムの作りも、
x86_64とは少し違うのです。
そして、出回っているプログラムも少しだけ違う。
(見た目も機能性もほぼ同じにみえるけど)
ラズパイUbuntuにできる方法
ではでは、具体的に。
arm64のUbuntuでも、32bitのライブラリはぶちこめます。
arm64に対する、32bitものの名前は「armhf」。
armhf(32bit)用のものもインストール候補に挙がってくるようにして、
「:armhf」を付けて、インストールすればいいのです。
コマンドは、
$ sudo dpkg --add-architecture armhf
$ sudo apt-get update
$ sudo apt-get update
できるかどうか、実験用に、このコマンドを打ち込んでみましょう。
$ sudo apt-get install libc6:armhf
インストールしてもしなくてもいいけど、これで、インストールできることが確かめられました。
どこかのサイトの情報を試そうとして、間違って、i386のdpkgをaddしちゃった人は、
$ sudo dpkg --remove-architecture i386
以上でおしまい。
これを書くのに、こんなの参考にしました。
なかなか情報がなくて、ちょっと引っかかった問題なので、
これはこれで、1つの話題として取り上げさせていただきます。
AMDはどうだっけ?
amd64はx86_64と同じ扱いでi386なのか、
それともIA32なのかは、ちょっとわかりませんでした。
これはこれで、ちょっと大事なことだから、
個人的には、この情報、広めてほしいと思っています。