Retropie 4.x on Odroid C2
-
Remove mali because if you add this flag RetroPie-Setup tries to build a sdl2 mali armhf package instead of a arm64 package.
-
Thanks.
Just updated my fork (https://github.com/hgomez/RetroPie-Setup/blob/master/scriptmodules/system.sh) and restarted build :)
I'll do a PR if I succeed to have a working setup on Odroid C2
-
new build complain about missing libsdl1.2-dev and libraspberrypi-dev ;/
-
thank you for your efforts to get RetroPie running on the Odroid C2 .
I love Retropie, and I own a C2, and think the power it adds will be a great gaming system.
-
@detron well I'm just trying to figure how to build it on C2, unsure if it will be easy or not.
I posted also on Odroid Forum (http://forum.odroid.com/viewtopic.php?f=136&t=23889) to see if someone already tried to build it -
I still appreciate knowing SOMEONE is trying. I do not have the right knowledge to try it myself.
-
I expect odroid C2 runs a full X11 environment. I would start from scratch and run RetroPie-Setup with
sudo __platform=generic-x11 ./retropie_setup.sh
and look what happens. Or addx11
to your__platform_flags
. -
I'll have a look to this approach too :)
-
@detron libretro testing ppa (http://ppa.launchpad.net/libretro/testing/ubuntu/pool/) contains many packages for arm64, so it could be something to investigate too. I'll try to rebuild emulationstation deb on Odroid C2 too
-
thank you. I am very comfortable with linux, but I do not have a good understanding of what truly goes into retroarch and emulationstation setup.
good luck, and if you get anywhere, please let me know.
thank you again
-
Hi.
I'm trying to compile retropie using the system.sh proposed in the 1st post.
I started with emulationstation and I successfully compiled it.
Below my system:- Odroid C2 rev 0.2
- Ubuntu standard image: ubuntu64-16.04lts-mate-odroid-c2-20161017
I followed the recommended procedure for ODROID C1 except for the last command:
sudo apt-get install -y git git clone --depth=1 https://github.com/RetroPie/RetroPie-Setup.git cd RetroPie-Setup sudo __platform=odroid-c2 ./retropie_setup.sh
I changed also the CMakeLists.txt with the correct libMali.so path.
#check if we're running on olinuxino MESSAGE("Looking for libMali.so") if(EXISTS "/usr/lib/aarch64-linux-gnu/libMali.so") MESSAGE("libMali.so found") set(GLSystem "OpenGL ES") else() MESSAGE("libMali.so not found") endif()
I stopped lightdm and when I run emulationstation I can see the correct graphic screen.
-
Hi.
Second step.
I successfully compile retroarch and lr-mame2003.
For retroarch I used the following build_retroarch() in retroarch.sh:function build_retroarch() { local params=(--enable-sdl2) ! isPlatform "x11" && params+=(--disable-x11 --enable-opengles --disable-ffmpeg --disable-sdl --enable-sdl2 --disable-oss --disable-pulse --disable-al --disable-jack) isPlatform "rpi" && params+=(--enable-dispmanx) isPlatform "mali" && params+=(--enable-mali_fbdev) isPlatform "arm" && params+=(--enable-floathard) # isPlatform "neon" && params+=(--enable-neon) isPlatform "armv8" && params+=(--disable-wayland --disable-vg --disable-miniupnpc) ./configure --prefix="$md_inst" "${params[@]}" sed -i 's/HAVE_OSS_LIB = 1/HAVE_OSS_LIB = 0/g' config.mk sed -i 's/HAVE_VIDEOCORE = 1/HAVE_VIDEOCORE = 0/g' config.mk sed -i 's/OPENGLES_LIBS = -lGLESv2 -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm/OPENGLES_LIBS = -lGLESv2 -lEGL/g' config.mk make clean make md_ret_require="$md_build/retroarch" }
And I patched
libretro-common/include/glsym/glsym_es2.h
adding:#include <stdint.h>
in the first line.
For lr-mame2003 the compilation has no problems.
I tried a few games and it works!
roleo
-
@roleo you shouldn't need to modify
config.mk
afterwards - the raspberry pi link libs/video core stuff should only be added if the raspberry pi dev libs are present on the system - which shouldn't be the case.are you building to run on X or framebuffer ?
-
@BuZz
I know but if I don't modify the config.mk the compilation process doesn't complete.
And I didn't find an option to disable videocore from configure.
Similar for OSS: the compilation is ok but the linker search for -lossaudio.
Maybe I missed a parameter?I'm building on framebuffer, X is stopped.
-
I will look into getting an ODroid-c2 board.
-
@BuZz
Is there a donation link?
I think there are a lot of users interested. -
@roleo https://retropie.org.uk/donate/
I have sent an email to Hardkernel to see if they would be interested in providing any development boards (as it would benefit them too). If not I will buy an ODroid-C2 to start with.
-
Update.
I compiled also lr-fbalpha adding the following section to makefile.libretro:else ifeq ($(platform), armv8) TARGET := $(TARGET_NAME)_libretro.so fpic := -fPIC SHARED := -shared -Wl,-no-undefined -Wl,--version-script=$(LIBRETRO_DIR) PLATFORM_DEFINES += -march=armv8-a+crc -mcpu=cortex-a53 -ffast-math HAVE_NEON = 1 ENDIANNESS_DEFINES := -DLSB_FIRST CFLAGS += -DARM
However I can not compile lr-imame4all.
-
Update.
lr-fceumm ok without problems.
lr-nestopia ok without problems.
lr-snes9x2010 ok adding the following section to Makefile.libretro:# ARMv8 else ifneq (,$(findstring armv8,$(platform))) EXT ?= so TARGET := $(TARGET_NAME)_libretro.$(EXT) SHARED := -shared -Wl,--no-undefined fpic := -fPIC CC ?= gcc CFLAGS += -march=armv8-a+crc -mcpu=cortex-a53 -DARM ASFLAGS += -mcpu=cortex-a53
lr-imame4all compiles but doesn't work.
No chances with reicast: too asm parts... -
@roleo I have been generously offered an ODroid-C2 for free from Hardkernel so I will look into adding official support once it arrives. Thanks for your code feedback etc.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.