mupen64plus-ui-python
mupen64plus-ui-python copied to clipboard
m64py on ARM
Trying to run on ARM (odroid u3, Mali 400, lubuntu 14.04)
Traceback (most recent call last):
File "/usr/games/m64py", line 57, in <module>
from m64py.frontend.mainwindow import MainWindow
File "/usr/share/m64py/m64py/frontend/mainwindow.py", line 30, in <module>
from m64py.frontend.worker import Worker
File "/usr/share/m64py/m64py/frontend/worker.py", line 27, in <module>
from m64py.core.core import Core
File "/usr/share/m64py/m64py/core/core.py", line 32, in <module>
from m64py.core.vidext import vidext
File "/usr/share/m64py/m64py/core/vidext.py", line 36, in <module>
from m64py.SDL import SDL_WasInit, SDL_InitSubSystem, SDL_QuitSubSystem, SDL_INIT_VIDEO
File "/usr/share/m64py/m64py/SDL/__init__.py", line 30, in <module>
from .dll import private_function, function
File "/usr/share/m64py/m64py/SDL/dll.py", line 226, in <module>
_dll = SDL_DLL('SDL', 'SDL_Linked_Version')
File "/usr/share/m64py/m64py/SDL/dll.py", line 59, in __init__
_platform_library_name(library_name))
ImportError: Dynamic library "libo" was not found
Any idea?
Did you use a mupen64plus version compiled against SDL2? Then try to start m64py with the parameter --sdl2
This is only a workaround (when it works) and not and actual fix
Yup, it's compiled against SDL2.
m64py --sdl2
M64Py - A frontend for Mupen64Plus version 0.2.3
Frontend: INFO: ScreenSaver not available: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.ScreenSaver was not provided by any .service files
Traceback (most recent call last):
File "/usr/share/m64py/m64py/SDL2/dll.py", line 100, in <module>
dll = _DLL("SDL2", ["SDL2", "SDL2-2.0"], os.getenv("PYSDL2_DLL_PATH"))
File "/usr/share/m64py/m64py/SDL2/dll.py", line 51, in __init__
raise RuntimeError("could not find any library for %s" % libinfo)
RuntimeError: could not find any library for SDL2
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/games/m64py", line 57, in <module>
from m64py.frontend.mainwindow import MainWindow
File "/usr/share/m64py/m64py/frontend/mainwindow.py", line 30, in <module>
from m64py.frontend.worker import Worker
File "/usr/share/m64py/m64py/frontend/worker.py", line 27, in <module>
from m64py.core.core import Core
File "/usr/share/m64py/m64py/core/core.py", line 32, in <module>
from m64py.core.vidext import vidext
File "/usr/share/m64py/m64py/core/vidext.py", line 33, in <module>
from m64py.SDL2 import SDL_WasInit, SDL_InitSubSystem, SDL_QuitSubSystem, SDL_INIT_VIDEO
File "/usr/share/m64py/m64py/SDL2/__init__.py", line 2, in <module>
from .dll import get_dll_file, _bind
File "/usr/share/m64py/m64py/SDL2/dll.py", line 102, in <module>
raise ImportError(exc)
ImportError: could not find any library for SDL2
Weird, I have SDL2 installed here.
Depends: python3, libsdl2-2.0-0, python3-pyqt5, python3-pyqt5.qtopengl, python3-pyqt5.qtsvg
Is it missing some dep?
Try checking your shared object library name. Some programs don't support the version suffixes that are placed by the OS (e.g. libxxx.so.6
). If it has a numeric suffix, create a symlink without the suffix. For instance, you'd link libxxx.so.6
as libxxx.so
.
If that doesn't work, I'm probably wrong and you should tell us the name of the .so file. :)
pip install pysdl2 and pip3 install pysdl2 worked for me