適当に翻訳する。
Play Station 2 のエミュレータである「Play!」をソースコードから作る。
PCSX2 で三國志VIII with パワーアップキットをやろうとしたら、文字がぼやけていて全然遊べなかったため。
ソースコードはここにある。 構築手順も同じページに載っている。
それによると、開発用のライブラリをインストールするためのコマンドは
apt install cmake libalut-dev qt5-default libevdev-dev libqt5x11extras5-dev libsqlite3-dev
であるが、Linux Mint には「qt5-default」は存在しなかった。 qt5-default を除いたもので十分だった。
以下のコマンドでソースコードをダウンロードして構築する。
$ git clone --recurse-submodules https://github.com/jpd002/Play-.git
$ cd Play-
$ mkdir build
$ cd build
$ cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt56/
$ cmake --build . --config Release
作られた実行ファイルは「Play-/build/Source/ui_qt」ディレクトリにある。
Play! では三國志8のテキスト部分が滲むことはなく、ちゃんと読めてちゃんと遊べる。
Linux Mint で 3DS エミュレータの Azahar Emulator をビルドする。
github のこのページに書いてある通りにやれば良いのだが、一箇所エラーが出たのでメモを残しておく。
基本的には次の命令文で構築できる。
$ git clone --recursive https://github.com/azahar-emu/azahar
$ sudo apt install build-essential clang clang-format cmake jackd libasound-dev libgl-dev libpipewire-0.3-dev libsndio-dev libssl-dev libsdl2-dev libx11-dev libxext-dev qt6-base-dev qt6-base-private-dev qt6-l10n-tools qt6-multimedia-dev qt6-tools-dev qt6-tools-dev-tools xorg-dev
$ cd azahar
$ mkdir build
$ cd build
$ cmake ../
$ cmake --build . -- -j"$(nproc)"
// インストールするのであれば、
$ sudo make install (optional)
// インストールせずに使うのであれば、
$ cd bin/Release
$ ./azahar
但し、「cmake --build . -- -j"$(nproc)"」のところで次のようなエラーが出た。
...
...
[ 79%] Building CXX object src/common/CMakeFiles/citra_common.dir/math_util.cpp.o
/home/shirouto/azahar/src/common/math_util.cpp:68: error: ignoring ‘#pragma GCC novector’ [-Werror=unknown-pragmas]
68 | DISABLE_VECTORIZE
|
/home/shirouto/azahar/src/common/math_util.cpp:130: error: ignoring ‘#pragma GCC novector’ [-Werror=unknown-pragmas]
130 | DISABLE_VECTORIZE
|
[ 79%] Building CXX object src/common/CMakeFiles/citra_common.dir/memory_detect.cpp.o
[ 79%] Building CXX object src/common/CMakeFiles/citra_common.dir/memory_ref.cpp.o
[ 79%] Building CXX object src/common/CMakeFiles/citra_common.dir/microprofile.cpp.o
[ 79%] Building CXX object src/common/CMakeFiles/citra_common.dir/param_package.cpp.o
cc1plus: note: unrecognized command-line option ‘-Wno-unused-command-line-argument’ may have been intended to silence earlier diagnostics
cc1plus: all warnings being treated as errors
gmake[2]: *** [src/common/CMakeFiles/citra_common.dir/build.make:337: src/common/CMakeFiles/citra_common.dir/math_util.cpp.o] Error 1
gmake[2]: *** Waiting for unfinished jobs....
[ 79%] Linking CXX static library libdynarmic.a
[ 79%] Built target dynarmic
gmake[1]: *** [CMakeFiles/Makefile2:2495: src/common/CMakeFiles/citra_common.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
...
...
gcc が古くて novector に対応していないらしい。しかし、apt update && apt upgrade をしても解決せず。
しかたなく、azahar/src/common/math_util.cpp の68行目と130行目の「DISABLE_VECTORIZE」をコメント・アウトして解決。
動作は問題無さそう。
Citra で動かなかったり音が出なかったりしたソフトもプレイすることができた。
カレンダー
カテゴリー
最新記事
ブログ内検索
広告