skmp / reicast-emulator

Reicast was a multiplatform Sega Dreamcast emulator
https://reicast.emudev.org
Other
1.1k stars 344 forks source link

Can't Compile on Orangepi Raspberry Pi clone #954

Open derekbaalmann opened 8 years ago

derekbaalmann commented 8 years ago

Don't know where to look for this, but I'm getting this error: ../../core/rec-ARM/ngen_arm.S: Assembler messages: ../../core/rec-ARM/ngen_arm.S:268: Error: VFP single precision register expected -- vldm r2,{d16-d24}' ../../core/rec-ARM/ngen_arm.S:271: Error: selected FPU does not support instruction --vmul.f32 Q2,Q8,d0[0]' ../../core/rec-ARM/ngen_arm.S:272: Error: selected FPU does not support instruction -- vmla.f32 Q2,Q9,d0[1]' ../../core/rec-ARM/ngen_arm.S:273: Error: selected FPU does not support instruction --vmla.f32 Q2,Q10,d1[0]' ../../core/rec-ARM/ngen_arm.S:274: Error: selected FPU does not support instruction -- vmla.f32 Q2,Q11,d1[1]' ../../core/rec-ARM/ngen_arm.S:294: Error: selected FPU does not support instruction --vmul.f32 q0,q1' ../../core/rec-ARM/ngen_arm.S:296: Error: selected processor does not support ARM mode vpadd.f32 d0,d0,d1' ../../core/rec-ARM/ngen_arm.S:297: Error: selected processor does not support ARM modevpadd.f32 d0,d0,d0' Makefile:298: recipe for target 'obj-dreamcast-armv7h/rec-ARM/ngen_arm.build_obj' failed make: *\ [obj-dreamcast-armv7h/rec-ARM/ngen_arm.build_obj] Error 1

When trying to install GL packages I get: The following NEW packages will be installed: libegl1-mesa-dev libgles2-mesa-dev 0 upgraded, 2 newly installed, 0 to remove and 1 not upgraded. Need to get 0 B/110 kB of archives. After this operation, 414 kB of additional disk space will be used. (Reading database ... 140999 files and directories currently installed.) Preparing to unpack .../libegl1-mesa-dev_10.3.2-1+deb8u1_armhf.deb ... Unpacking libegl1-mesa-dev:armhf (10.3.2-1+deb8u1) ... dpkg: error processing archive /var/cache/apt/archives/libegl1-mesa-dev_10.3.2-1+deb8u1_armhf.deb (--unpack): trying to overwrite '/usr/include/KHR/khrplatform.h', which is also in package sunxi-mali-r3p0 4.0.0.0 Preparing to unpack .../libgles2-mesa-dev_10.3.2-1+deb8u1_armhf.deb ... Unpacking libgles2-mesa-dev:armhf (10.3.2-1+deb8u1) ... dpkg: error processing archive /var/cache/apt/archives/libgles2-mesa-dev_10.3.2-1+deb8u1_armhf.deb (--unpack): trying to overwrite '/usr/include/GLES2/gl2platform.h', which is also in package sunxi-mali-r3p0 4.0.0.0 Errors were encountered while processing: /var/cache/apt/archives/libegl1-mesa-dev_10.3.2-1+deb8u1_armhf.deb /var/cache/apt/archives/libgles2-mesa-dev_10.3.2-1+deb8u1_armhf.deb E: Sub-process /usr/bin/dpkg returned an error code (1)

I'm guessing my issue is that I'm not using the right GL files, since they came from sunxi-mali package and not the mesa-dev. No idea on how to fix or replace those.

Please Help :D The processor is an H3

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/36935028-can-t-compile-on-orangepi-raspberry-pi-clone?utm_campaign=plugin&utm_content=tracker%2F500311&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F500311&utm_medium=issues&utm_source=github).
skmp commented 8 years ago

It would seem that the neon unit is not available? Or maybe not enabled on the compiler.

Can you cat /etc/proc?

skmp commented 8 years ago

Err, /etc/cpuinfo *

Holzhaus commented 8 years ago

It's cat /proc/cpuinfo ;-)

skmp commented 8 years ago

Oh, indeed

caleb90 commented 8 years ago

I'm having a similar error while compiling it.

gcc -I../../core -I../../core/deps -I../../core/khronos -D TARGET_BEAGLE -D TARGET_LINUX_ARMELv7 -DARM_HARDFP -fsingle-precision-constant -g -O3 -D RELEASE -c -D USES_HOMEDIR -frename-registers -fno-strict-aliasing -ffast-math -ftree-vectorize -fomit-frame-pointer ../../core/deps/libwebsocket/base64-decode.c -o obj-dreamcast-armv7h/deps/libwebsocket/base64-decode.build_obj mkdir -p obj-dreamcast-armv7h/rec-ARM/ gcc -mfloat-abi=hard -march=armv7-a -D TARGET_BEAGLE -D TARGET_LINUX_ARMELv7 -DARM_HARDFP -fsingle-precision-constant -g -O3 -D RELEASE -c -D USES_HOMEDIR -frename-registers -fno-strict-aliasing -ffast-math -ftree-vectorize -I../../core -I../../core/deps -I../../core/khronos ../../core/rec-ARM/ngen_arm.S -o obj-dreamcast-armv7h/rec-ARM/ngen_arm.build_obj ../../core/rec-ARM/ngen_arm.S: Assembler messages: ../../core/rec-ARM/ngen_arm.S:268: Error: VFP single precision register expected -- vldm r2,{d16-d24}' ../../core/rec-ARM/ngen_arm.S:271: Error: selected FPU does not support instruction --vmul.f32 Q2,Q8,d0[0]' ../../core/rec-ARM/ngen_arm.S:272: Error: selected FPU does not support instruction -- vmla.f32 Q2,Q9,d0[1]' ../../core/rec-ARM/ngen_arm.S:273: Error: selected FPU does not support instruction --vmla.f32 Q2,Q10,d1[0]' ../../core/rec-ARM/ngen_arm.S:274: Error: selected FPU does not support instruction -- vmla.f32 Q2,Q11,d1[1]' ../../core/rec-ARM/ngen_arm.S:294: Error: selected FPU does not support instruction --vmul.f32 q0,q1' ../../core/rec-ARM/ngen_arm.S:296: Error: selected processor does not support vpadd.f32 d0,d0,d1' in ARM mode ../../core/rec-ARM/ngen_arm.S:297: Error: selected processor does not supportvpadd.f32 d0,d0,d0' in ARM mode Makefile:325: recipe for target 'obj-dreamcast-armv7h/rec-ARM/ngen_arm.build_obj' failed make: *\ [obj-dreamcast-armv7h/rec-ARM/ngen_arm.build_obj] Error 1

This the the output from cat /proc/cpuinfo from a orange pi PC with the same H3 processor. Processor : ARMv7 Processor rev 5 (v7l) processor : 0 BogoMIPS : 6144.00

processor : 1 BogoMIPS : 6144.00

processor : 2 BogoMIPS : 6144.00

processor : 3 BogoMIPS : 6144.00

Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpv4 idiva idivt CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5

Hardware : sun8i Revision : 0000 Serial :

mpcore-hub commented 5 years ago

compile without -fsingle-precision-constant this make a problem

i can compile with SDL2 and GLES, works performance is not good, GLES only iam work on it, i make a request when iam finished a workable version.