忍者ブログ

素人翻訳

適当に翻訳する。

Ubuntu-22.10にてmelonDSの構築・インストール[令和5年3月]

Ubuntuのdesmumeがバグで動かないので、かわりにmelonDSをインストールする。

$ sudo apt update
$ sudo apt install cmake extra-cmake-modules libcurl4-gnutls-dev libpcap0.8-dev libsdl2-dev qtbase5-dev qtbase5-private-dev qtmultimedia5-dev libslirp-dev libarchive-dev
$ sudo apt install git
$ mkdir melonDS
$ cd melonDS
$ git clone https://github.com/melonDS-emu/melonDS
$ cd melonDS
$ cmake -B build
$ cmake --build build -j$(nproc --all)
$ cd build
$ sudo make install
$ ../../..

これで問題なく起動・使用できた。

このサイトを参考にした。

PR

ubuntu-22.10にてsnes9x、snes9x-gtk(snes9x-1.60)を構築・インストール

Ubuntu-22.10でSnes9x-gtk(snes9x-1.60)をインストールする。

このサイトこのサイトによると、snes9x-gtkは「meson」を使ってビルドする仕組みになっているようだ。
そのため「snes9x-1.60/gtk」にはconfigureスクリプトは入ってない。

$ sudo apt install gcc
$ sudo apt install g++
$ sudo apt install make
$ sudo apt install meson
$ sudo apt install libx11-dev
$ sudo apt install libxv-dev
$ sudo apt install libxml2-dev
$ sudo apt install libsdl2-dev
$ sudo apt install libgtkmm-3.0-dev
$ sudo apt install pulseaudio
$ sudo apt install portaudio19-dev
$ sudo apt install alsa-oss
$ export CXXFLAGS="-std=gnu++14"
$ tar -xf snes9x-1.60.tar.gz
$ cd snes9x-1.60/gtk
$ meson build --prefix=/usr/local --buildtype=release --strip
$ cd build
$ ninja
$ ./snes9x-gtk
$ sudo meson install
$ cd ../..
$ snes9x-gtk

「libepoxy」も必要らしいが、上のように色々入れていたら、いつの間にかインストールされていた。
「xorg-dev」は入れたかもしれないし、入れなかったかもしれない。多分、入れなくても大丈夫。

snes9xを作らなくてもsnes9x-gtkの作成は可能。
ターミナルから使用する普通のsnes9xは「snes9x-1.60/unix」に移動して作成する。

$ export CXXFLAGS="-std=gnu++14"
$ cd snes9x-1.60/unix
$ ./configure
$ make
$ sudo make install

snes9xよりもsnes9x-gtkの方が設定・利用しやすい。

====================

その他、snes9x作成の際に出たエラーについて。

$ sudo apt update
...
...
Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is he^C by process 5782 (unattended-upgr)... 73s
...
...
$

エラーに書かれているプロセス番号を指定して「sudo kill 5782」で解決。

$ cd snes9x-1.60/unix
$ ./configure
$ make
...
...
./conffile.cpp:215:19: required from here
/usr/include/c++/12/bits/stl_tree.h:770:15: error: static assertion failed: comparison object must be invocable as const
/usr/include/c++/12/bits/stl_tree.h:770:15: note: ‘std::is_invocable_v<const ConfigFile::ConfigEntry::line_less&, const ConfigFile::ConfigEntry&, const ConfigFile::ConfigEntry&>’ evaluates to false
make: *** [Makefile:77: ../conffile.o] Error 1
$

このサイトに従って、環境変数「CXXFLAGS」に「-std=gnu++14」を設定して解決。

(snes9x/unixにて)
$ export CXXFLAGS="-std=gnu++14"
$ make clean
$ ./configure
$ make
...
...
x11.cpp:26:10: fatal error: X11/extensions/Xvlib.h: No such file or directory
26 | #include <X11/extensions/Xvlib.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:77: x11.o] Error 1
$

これはlibxv-devをインストールして解決。

カレンダー

03 2024/04 05
S M T W T F S
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

最新コメント

[08/18 NONAME]
[05/18 NONAME]
[04/09 NONAME]
[03/21 NONAME]
[03/20 NONAME]

最新記事

ブログ内検索

広告

バーコード

広告