mieki256's diary



2023/07/28(金) [n年前の日記]

#2 [love2d][ubuntu][linux] Ubuntu 20.04 LTS で love2d が動かない

Ubuntu Linux 18.04 LTS (Bionic Beaver) を 20.04 LTS (Focal Fossa) にアップグレードしたけれど、無料で利用できる2Dゲームエンジン、love2d をインストールしても動かない。libsndio.so.6.1 が見つからないというエラーが出る。

_LoVE - Free 2D Game Engine
_Ubuntu - focal の love パッケージに関する詳細

love2d のインストールは以下。love2d 11.3-1 がインストールされる。
sudo apt install love

love と打って実行。
$ love
love: error while loading shared libraries: libsndio.so.6.1: cannot open shared object file: No such file or directory
「libsndio.so.6.1 というファイルがねえぞ」と言ってきて実行できない。

_Ubuntu - パッケージのファイル一覧: libsndio7.0/focal/amd64

libsndio.so.7.0 は存在するけど、libsndio.so.6.1 は無い。

ググってみたら以下のやり取りを見かけた。

_Prebuild binary: libsndio.so.6.1 cannot open shared object file - Issue #3862 - citra-emu/citra - GitHub

libsndio.so.7.0 から libsndio.so.6.1 にシンボリックリンクを張ってしまえ、という解決策が紹介されていた。Ubuntu Linux 20.04 LTS の場合は以下になるのだろうか。
sudo ln -T /usr/lib/x86_64-linux-gnu/libsndio.so.7.0 /usr/lib/x86_64-linux-gnu/libsndio.so.6.1

たしかにコレをすれば、love2d 11.3-1 が動くようになった。正常に動作しているのかどうかは分からないけれど…。

余談。ppa版をインストールしても、libsndio.so.6.1 が見つからないと言われてしまう。

_love-stable : Bart van Strien
sudo add-apt-repository ppa:bartbes/love-stable
sudo apt update
sudo apt install love
$ love
love: error while loading shared libraries: libsndio.so.6.1: cannot open shared object file: No such file or directory

flatpak版を使う手もある :

flatpak (flathub) でも、love2d の最新版(11.4)が公開されているらしい。

_LoVE | Flathub
_Ubuntu Flathub Setup | Flathub

そちらをインストールできないか試してみた。しかしそもそも、flatpak のセットアップ時、以下でエラーが出てしまう。

sudo apt install flatpak
sudo apt install gnome-software-plugin-flatpak
$ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

** (flatpak remote-add:12667): WARNING **: 11:08:06.475: Error unregistering authentication agent: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name :1.84 was not provided by any .service files
error: Authorization error: Message recipient disconnected from message bus without replying

sudo をつけたらエラーが出なかった。そんなことしちゃっていいのか分らんけど…。リポジトリ?を追加できたらOSを再起動。
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
sudo reboot

love2d をインストール。
sudo flatpak install flathub org.love2d.love2d

実行は以下。
flatpak run org.love2d.love2d

一応動いたけれど、起動時にエラーが出る…。アンインストールしておいた。
sudo flatpak uninstall flathub org.love2d.love2d

AppImageのほうが楽かもしれない :

AppImage でも、love2d 11.4 が提供されている模様。

_LinuxでAppImage形式のアプリを使う方法と注意点のまとめ | virtualiment
_Release LoVE 11.4 [Mysterious Mysteries] - love2d/love - GitHub

mkdir ~/bin
cd ~/bin

wget https://github.com/love2d/love/releases/download/11.4/love-11.4-x86_64.AppImage
chmod a+x love-11.4-x86_64.AppImage

./love-11.4-x86_64.AppImage
こちらならエラーを出さずに実行することができた。

alias で定義しておけば呼び出しも楽になるかもしれない。以下は bash利用、かつ、~/.bash_aliases で alias を定義してる場合の事例。
vi ~/.bash_aliases
alias love='/home/USERNAME/bin/love-11.4-x86_64.AppImage'

2023/07/29追記 :

別の Ubuntu Linux 20.04 LTS上で試してみたら、libsndio.so.6.1 が無くても ppa版 love2d 11.4 が動いてしまった。原因も分かったので、2023/07/29の日記にメモしておいた。

以上です。

過去ログ表示

Prev - 2023/07 - Next
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project