Ubuntu23.04にxnp2をインストール

xnp2
以前xnp2をubuntuにインストールしていましたが、ubuntu23.04のクリーンインストールなどで使えなくなっていたので、次のサイトを参考にxnp2を再びインストールすることにしました。 以下はその顛末ですが、結論から言うと本家サイトのソースではなく、GitHubにあるソースでインストールできたというお話です。
参考にしたサイト: https://mobile.k05.biz/e/2017/08/xnp2-raspberrypi.html
1.まずは本家サイトのソースでトライ
(1)ライブラリのインストール
本家サイト(https://www.nonakap.org/np2/)には このようなことは書いていませんが、参考サイトの記事どおりまずは必要なライブラリをインストール。
sudo apt-get install libsdl-mixer1.2 libsdl-mixer1.2-dev libgtk2.0-dev libglib2.0-dev x11proto-xext-dev gcc-avr build-essential
※関連ファイルも含めて217MBもインストールされてしまった。

後日、ubuntu23.10をクリーンインストールして、この防備録を参考にxnp2を再々度インストールした際に上記の必要 ライブラリをインストールせずに「2.GitHubにあるソースでトライ」からやってしまって、エラー出力を見ながら不足しているライブラリを試行錯誤であれこれ インストールした。その中には全く必要のないライブラリもいくつかあったが、何とかコンパイルできた。結局、上のライブラリが絶対ではなく同じ機能を提供する 他のライブラリでもよいと言うことか。ちなみに、インストールしたライブラリは、automake、libgtk2.0-dev、libsdl1.2-dev、ただし、自動的に一緒に インストールされた関連ファイルも多々あったはず。(libsdl2関連のライブラリも複数インストールしたがおそらくゴミになっていると思われる)

(2)xnp2のコンパイル
xnp2のソースは本家サイトからダウンロード。以前からアップデートされていないようで、参考サイトと同じファイル名
xnp2-0.86.tar.bz2
解凍して、x11ディレクトリで(ubuntuのデスクトップはx11になっていることが条件だと思ったがそうでもないようだ。x11でなくてもxnp2が動作しているので)
./configure

いろいろ意味不明のメッセージがいっぱい出て、止まったのでできたのかと思ったら、次のメッセージで止まっている。必要なlibusb-1.0パッケージがないとのこと。
Package 'libusb-1.0', required by 'virtual:world', not found

apt search で調べるとlibusb-1.0.0はインストール済みでしたが、よく似た名前のパッケージで参考サイトでもインストールしたと書いている次のパッケージは未インストールでしたのでインストール。
sudo apt install libusb-1.0-0-dev

その後、再度
./configure
今度はうまくいったようで、Makefileも作成できたようです。

make
しかし、エラーが発生してmakeに失敗。ざっと見た感じでは、エラーがいっぱい発生しているようで、こりゃ私には無理。以前インストールしたときと比べて ubuntuのバージョンもかなり上がっているのでその関係なのかなとここでコンパイル放棄。

2.次にGitHubにあるソースでトライ
(1)xp2のソースをダウンロード
本家サイトのソース以外にGitHubにもxnp2のソースがある(https://github.com/nonakap/xnp2 )ので、今度はそれでトライしてみることに。

GitHubにあるxnp2のzipをダウンロード。
xnp2-master.zip
(codeのボタンを押すとポップアップ?が表示されてその中にDownload Zipあり)
(2)コンパイル

コンパイルに必要なライブラリは本家サイトからダウンロードしたソースをコンパイルする際にインストール済みであることに注意。必要なライブラリがインストールされていないとコンパイルで悩みます。

解凍してその中のx11ディレクトリに入って
./configure
としたけど、そんなファイルはないと言われる。

autogen.shというスクリプトがあるのでダメ元で実行。
./autogen.sh
あら不思議configureファイルが作成された。

./configure
うまくmakefileが作成された。

make
途中エラー表示みたいなのも出たがなんとか成功した様子。
(3)インストール
sudo make install
以下のようなインストール作業状況が表示されて終了。インストールできたみたい。 どうやら実行ファイルは/usr/local/binにインストールされたようです。

make[1]: ディレクトリ '/home/XXXX/xnp2-master/x11' に入ります
/usr/bin/mkdir -p '/usr/local/bin'
/usr/bin/install -c xnp2 '/usr/local/bin'
/usr/bin/mkdir -p '/usr/local/share/xnp2'
/usr/bin/install -c -m 644 ./../x11/resources/fddseek.wav ./../x11/resources/fddseek1.wav ./../np2tool/np2tool.d88 '/usr/local/share/xnp2'
/usr/bin/mkdir -p '/usr/local/share/man/man1'
/usr/bin/install -c -m 644 xnp2.1 xnp2.1j '/usr/local/share/man/man1'
make[1]: ディレクトリ '/home/XXXX/xnp2-master/x11' から出ます


端末から xnp2とやると、xnp2のwindowが表示された。
(4)調整
①window内が文字化けしている。
②端末にエラーメッセージが表示されている。
 Gtk-Message: 22:28:38.129: Failed to load module "canberra-gtk-module"

②に関して:
apt search canberra-gtkで調べてそれらしいパッケージをインストール。
sudo apt install libcanberra-gtk-module
xnp2を実行しても端末にエラーメッセージは表示されなくなった。

①に関して:
以前インストールしていたときのバックアップからfont.bmpをコピーしてホームホルダの.np2に配置したら文字化けはなくなった。

一応、インストール完了とした。あとは運用次第。
(追記)
GitHubのソースでubuntu22.04にインストール
①まずはお決まりのライブラリのインストール
②x11ディレクトリで./autoge.shを実行
③./configureを実行
(libusb-1.0のライブラリは要求されなかった。本家サイトのソースの場合に要求されるように思われるが、未確認。)
④make
⑤sudo make install
⑥xnp2実行
 xnp2のwindowが表示された。
 (文字化けと'pk-gtk-module'がロードできないというメッセージ)
⑦font.bmpを.np2ディレクトリに配置
⑧xnp2実行
 文字化け解消
⑨pk-gtk-moduleについてはネットでググって調べてみたがだめだった。インストールするよう説明されているライブラリはすでにインストールされていたし、 環境変数を追加しても効果がない。ubuntuのバグなのか。でもまあ、エラーメッセージは表示されるけどxnp2の動作には影響ないから、当面ubuntu22.04ではこのままでよしとする。

連絡先:xnp2install.inblank.net