For Odroid C2, should I use
PROJECT=Amlogic DEVICE=S905 ARCH=arm
or
PROJECT=Amlogic DEVICE=S905 ARCH=aarch64
?
PROJECT=Amlogic DEVICE=S905 ARCH=arm
Thank you!
Hi TheCoolest (remember me? you helped me get my abox a95x box working!) -
Along the lines of your answer - the selection of ARCH=arm instead of aarch64. I’ve done some reading and found that CoreElec runs a 64-bit kernel, but userspace is 32-bit. Hence the ARCH=arm instead of aarch64, I assume.
Recently, the bounty to complete an aarch64 dynarec was merged into the libretro-mupen64plus core, so I wanted to see if I could get my S905 or S912 box to try this out.
My first idea was to see if I could compile an entire CoreElec image as aarch64. Over in the LE forums, there is a user that releases aarch64 builds - https://forum.libreelec.tv/thread/12330-test-libreelec-images-with-kodi-18-for-s9xxx/ - so my gut feeling is that it could work, but it would be a lot to build, probably more than necessary if I’m just trying to use a single aarch64 libretro core.
So my next option was to compile just retroarch with Project=Amlogic Arch=aarch64, but then I ran into some errors with libhybris not supporting aarch64. I found this was a package included for the Amlogic project. Is this required if I want to compile retroarch too? If so, this library’s lack of support for aarch64 would be a roadblock to getting this to work.
If somebody could help confirm whether or not I’m chasing the impossible, it would be much appreciated, thanks!
libhybris is needed for S912 builds, without it you would have no GUI
Thanks adamg - so if I’m understanding this right, libhybris does not support aarch64, so even though we have a chipset that supports 64 bit, it is not currently possible to create any aarch64 binaries (with GUI) that would run on our S912 Amlogic boxes.
It sounds like I won’t be able to test the aarch64 dynarec on my S912 box at all - can you confirm?
Yes that is correct, libhybris is needed because we have no fbdev mali binary for the GPU inside the S912 devices, so we use libhybris to use the Android gralloc for S912 for the UI.
libhybris does support aarch64. You build it with “–enable-arch=arm64”. However, having done so, the resulting image gives me a core dump.
I suspect the issue is that the pre-built binaries from the opengl-meson-t82x package don’t come in an aarch64 flavour.
i just pulled the git from the internet and did the ‘make’ command. I thought it had two tar files as output. Are those the two tar files from the nightlies? So, one for ng and one for non-ng?
- it’s only one tar file as output and it’s 182MB big. Could be the generic ng-arm gz file from the nightlies.
create only .tar for update of Amlogic-ng
PROJECT=Amlogic-ng make
create only .tar for update of Amlogic
PROJECT=Amlogic make
create .img for update of Amlogic-ng
PROJECT=Amlogic-ng make image
create .img for update of Amlogic
PROJECT=Amlogic make image
it worked.
Hi,
I am a newbie and try to build the latest version 20.1 from a s905w processor. I tried:
- PROJECT=Amlogic DEVICE=AMLGX ARCH=arm make image
- PROJECT=Amlogic DEVICE=AMLGX ARCH=aarch64 make image
I got the error:
Traceback (most recent call last):
File “scripts/genbuildplan.py”, line 374, in
REQUIRED_PKGS = processPackages(args, ALL_PACKAGES)
File “scripts/genbuildplan.py”, line 303, in processPackages
raise Exception(msg)
Exception: Invalid package reference: dependency gpu-aml in package linux-drivers::PKG_DEPENDS_TARGET is not valid
Parallel build failure - see log for details. Time of failure: Sat Jun 17 08:33:36 UTC 2023
make: *** [Makefile:10: image] Error 1
Can you help me what would be the proper build command?
PROJECT=Amlogic
means you are building LibreELEC.
For CoreELEC you need to use like
PROJECT=Amlogic-ce DEVICE=Amlogic-ng ARCH=arm make
Confirm it worked, thank you Peter!