Kodi Community Forum

Full Version: Compiling retroplayer on Ubuntu 16.04
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I am trying to compile retro player on Ubuntu 16.04

The retroplayer branch compiles fine as does the joystick addon.

This is the modified build script here:

http://paste.ubuntu.com/23097389/

But the game addon fails:

http://paste.ubuntu.com/23097381/

Quote:CMake Error at CMakeLists.txt:8 (find_package):
By not providing "Findkodi.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "kodi", but
CMake did not find one.

Could not find a package configuration file provided by "kodi" with any of
the following names:

kodiConfig.cmake
kodi-config.cmake

Add the installation prefix of "kodi" to CMAKE_PREFIX_PATH or set
"kodi_DIR" to a directory containing one of the above files. If "kodi"
provides a separate development package or SDK, be sure it has been
installed.


-- Configuring incomplete, errors occurred!
See also "/home/kodi/workspace/kodi/game.addons-build/game.moonlight-prefix/src/game.moonlight-build/CMakeFiles/CMakeOutput.log".
CMakeFiles/game.moonlight.dir/build.make:106: recipe for target 'game.moonlight-prefix/src/game.moonlight-stamp/game.moonlight-configure' failed
make[2]: *** [game.moonlight-prefix/src/game.moonlight-stamp/game.moonlight-configure] Error 1
CMakeFiles/Makefile2:139: recipe for target 'CMakeFiles/game.moonlight.dir/all' failed
make[1]: *** [CMakeFiles/game.moonlight.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

Any ideas?
Edit: I fixed it by symlinking every occurence of the file:

ln -s KodiConfig.cmake kodiConfig.cmake

But now I am stuck installing the game addon:

Quote:[100%] Completed 'snes9x-next'
[100%] Built target snes9x-next
[ 20%] Performing install step for 'snes9x-next'
[100%] Built target snes9x-next
Install the project...
-- Install configuration: "Debug"
CMake Error at cmake_install.cmake:44 (file):
file INSTALL cannot find
"/home/kodi/workspace/kodi/game.addons-build/build/snes9x-next/src/snes9x-next/snes9x_next_libretro.so".


Makefile:72: recipe for target 'install' failed
make[3]: *** [install] Error 1
CMakeFiles/snes9x-next.dir/build.make:73: recipe for target 'build/snes9x-next/src/snes9x-next-stamp/snes9x-next-install' failed
make[2]: *** [build/snes9x-next/src/snes9x-next-stamp/snes9x-next-install] Error 2
CMakeFiles/Makefile2:492: recipe for target 'CMakeFiles/snes9x-next.dir/all' failed
make[1]: *** [CMakeFiles/snes9x-next.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

I skipped ahead, and only built the mega drive emulator.

I went into Games, added my ROMS folder. Selected a mega drive ROM and nothing happened - I get game is not supported message.

What step have I missed?

There is nothing listed under game addons or program addons.

What am I supposed to do once I've compiled the addon?

The controller configuration panel loads but I see "Joystick support not found"
After reboot I now have: Sega Generis under Add-ons/Emulators. When I select Sonic the Hedgehog.bin, I still get unsupported??

Quote:15:38:33 T:140134425713024 DEBUG: Loading settings for zip://%2Fhome%2Fkodi%2Fstorage%2Femulators%2FSega%20Genesis%2FRoms%2FSonic%20the%20Hedgehog%203%20(E).zip/Sonic the Hedgehog 3 (E).bin
15:38:33 T:140134425713024 DEBUG: CPlayerCoreFactory::GetPlayers(zip://%2Fhome%2Fkodi%2Fstorage%2Femulators%2FSega%20Genesis%2FRoms%2FSonic%20the%20Hedgehog%203%20(E).zip/Sonic the Hedgehog 3 (E).bin)
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: system rules
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: matches rule: system rules
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: mms/udp
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: lastfm/shout
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtmp
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: rtsp
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: streams
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: dvd
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: sdp/asf
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: nsv
15:38:33 T:140134425713024 DEBUG: CPlayerSelectionRule::GetPlayers: considering rule: radio
15:38:33 T:140134425713024 DEBUG: CPlayerCoreFactory::GetPlayers: matched 0 rules with players
15:38:33 T:140134425713024 DEBUG: CPlayerCoreFactory::GetPlayers: adding retroplayer
15:38:33 T:140134425713024 DEBUG: CPlayerCoreFactory::GetPlayers: added 1 players

After unzipping the file - it now says Game add-ons: Sega Genesis (Gensis Plus GX): Add on couldn't be loaded. Can't load shared library

Quote:15:55:59 T:139843875457408 DEBUG: SECTION:LoadDLL(/home/kodi/workspace/kodi-build/lib/kodi/addons/game.libretro.genplus/game.libretro.genplus.so)
15:55:59 T:139843875457408 DEBUG: Loading: /home/kodi/workspace/kodi-build/lib/kodi/addons/game.libretro.genplus/game.libretro.genplus.so
15:55:59 T:139843875457408 WARNING: Unable to resolve: /game.libretro.genplus.so get_addon, reason: /home/kodi/workspace/kodi-build/lib/kodi/addons/game.libretro.genplus/game.libretro.genplus.so: undefined symbol: get_addon
15:55:59 T:139843875457408 ERROR: Unable to resolve exports from dll /home/kodi/workspace/kodi-build/lib/kodi/addons/game.libretro.genplus/game.libretro.genplus.so
15:55:59 T:139843875457408 DEBUG: SECTION:UnloadDll(/home/kodi/workspace/kodi-build/lib/kodi/addons/game.libretro.genplus/game.libretro.genplus.so)

How do I fix that and why does it not unzip zips?
(2016-08-27, 16:34)tutu Wrote: [ -> ]After unzipping the file - it now says Game add-ons: Sega Genesis (Gensis Plus GX): Add on couldn't be loaded. Can't load shared library

Loading from inside a .zip requires "VFS support". See the libretro core matrix to see if the core supports loading from the VFS.

(2016-08-27, 16:34)tutu Wrote: [ -> ]
Quote:15:55:59 T:139843875457408 WARNING: Unable to resolve: /game.libretro.genplus.so get_addon, reason: /home/kodi/workspace/kodi-build/lib/kodi/addons/game.libretro.genplus/game.libretro.genplus.so: undefined symbol: get_addon

This error appears when game.libretro isn't found I think.
(2016-08-27, 20:58)garbear Wrote: [ -> ]This error appears when game.libretro isn't found I think.

Thanks - are you able to fix the snes compile issue? This is stopping me from compiling libretro apparently.

The core doesn't support zips - I've unzipped them now. Thank you!
(2016-08-28, 10:33)tutu Wrote: [ -> ]Thanks - are you able to fix the snes compile issue? This is stopping me from compiling libretro apparently.

The snes9x-derived cores are broken. This is part of a larger effort to make the various Snes9x branches more distinct. The following were renamed:
  • Snes9x is now Snes9x 2005 (based on Snes9x v1.43)
  • Snes9x-Next is now Snes9x 2010 (based on Snes9x v1.52+)
  • PocketSNES is now Snes9x 2002 (based on Snes9x 1.39 and optimized for ARM)

In addition to renaming the libraries, we should rebrand as well. Until then, stick to one of the bSNES-derived cores (Beetle bSBNES or bSNES Mercury)

I'm going backpacking in a few days and won't be back until after DevCon (~20 september) so I'll try to rebrand the Snes9x cores before then.