RetroArch icon indicating copy to clipboard operation
RetroArch copied to clipboard

Unable to compile Retroarch for Raspberry Pi 5

Open chest069 opened this issue 11 months ago • 3 comments

Is there an existing issue for this?

  • [X] This is a bug in RetroArch frontend
  • [X] I have searched the existing issues

Description

When I run the following commands I get errors: ./configure --enable-neon --enable-opengles --enable-opengles3 --disable-qt --disable-vulkan --disable-wayland --enable-sdl2 the error is Build assumed that __ARM_NEON__ is defined, but it's not. Exiting ...

If I remove --enable-neon the I can do make but I get the following error LD retroarch /usr/bin/ld: cannot find -lX11-xcb: No such file or directory collect2: error: ld returned 1 exit status make: *** [Makefile:204: retroarch] Error 1

Expected behavior

I am expecting for it to compile correctly

Steps to reproduce the bug

Use instructions from thelinuxcode.com to install retroarch on raspberry pi 5

Version/Commit

git newest ver

Bisect Results

not sure

Check in the nightly version

I don't know

Platform & operating system

Raspberry Pi 5

Affected Cores

All

Environment information

Gnome

Relevant log output

None

chest069 avatar Dec 29 '24 12:12 chest069

Works for me. Perhaps you have some mix of configure switches that are causing you grief? Here are mine:

	make clean
	CFLAGS='-O2 -march=armv8-a -mcpu=cortex-a72 -mtune=cortex-a72' \
	CXXFLAGS="${CFLAGS}" \
	./configure --prefix="${HOME}/.local" \
	        --disable-floathard --disable-neon --disable-rewind \
	        --disable-caca --disable-cheats --disable-langextra \
	        --disable-libusb --disable-parport --disable-roar --disable-winrawinput \
	        --disable-dispmanx --disable-opengl1 --disable-sdl \
	        --disable-jack --disable-mpv --disable-oss --disable-tinyalsa \
	        --disable-vg --disable-x11 --disable-xshm --disable-xvideo \
	        --disable-ffmpeg --disable-v4l2 --disable-videoprocessor \
	        --enable-cheevos --enable-command --enable-lua --enable-networking \
	        --enable-materialui --enable-ozone --enable-rgui --enable-xmb \
	        --enable-egl --enable-kms --enable-qt --enable-sixel --enable-wayland \
	        --enable-opengles --enable-opengles3 --enable-opengles3_1 --enable-opengles3_2 --ena
ble-opengl_core \
	        --enable-sdl2 --enable-vulkan --enable-vulkan_display \
	        --enable-alsa --enable-bluetooth --enable-crtswitchres --enable-pipewire --enable-pu
lse \
	        --enable-dbus --enable-hid --enable-libshake --enable-rpiled --enable-udev \
	        --enable-networkgamepad --enable-ssl --enable-systemd --enable-wifi \
	        --enable-thread_storage --enable-threads --enable-zlib \
	|| exit

These may cause you some warnings or dependency errors if missing some development libs, i.e., libzip-dev and libzip4. I prefer to have sixel (for unit-testing only) so I need libsixel-dev installed here, else disable it.

theflyingape avatar Dec 29 '24 15:12 theflyingape

The NEON part is only significant if you are building for 32-bit ARM, which is unlikely for RPi 5, but anyway you can enable it by prepending the .configure command with CFLAGS='-mfpu=neon' . https://docs.libretro.com/guides/rpi/#configuration-options

For the other error, do you want to build for KMS mode (no desktop environment)? It will need some extra packages, I'd guess libxkbcommon-dev in this case, the link above has some details up to RPi 4, I don't think there are too many changes for Pi 5.

zoltanvb avatar Dec 29 '24 17:12 zoltanvb

Thanks for the reply, I will try what you said.

On Sun, Dec 29, 2024 at 12:12 PM zoltanvb @.***> wrote:

The NEON part is only significant if you are building for 32-bit ARM, which is unlikely for RPi 5, but anyway you can enable it by prepending the .configure command with CFLAGS='-mfpu=neon' . https://docs.libretro.com/guides/rpi/#configuration-options

For the other error, do you want to build for KMS mode (no desktop environment)? It will need some extra packages, I'd guess libxkbcommon-dev in this case, the link above has some details up to RPi 4, I don't think there are too many changes for Pi 5.

— Reply to this email directly, view it on GitHub https://github.com/libretro/RetroArch/issues/17306#issuecomment-2564785316, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAFBTOTDSGZJPAWJP2SR7P32IAUOHAVCNFSM6AAAAABUKXQC6WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNRUG44DKMZRGY . You are receiving this because you authored the thread.Message ID: @.***>

chest069 avatar Dec 29 '24 22:12 chest069

There may also be some flags you could find in the lakka build too https://github.com/libretro/Lakka-LibreELEC/

RobLoach avatar Jan 19 '25 04:01 RobLoach