Razish / japp

JA++ server and client modification for Jedi Academy
GNU General Public License v2.0
44 stars 30 forks source link

Build failed for Raspberry Pi 3 Model b #429

Closed MihaiChirculete closed 11 months ago

MihaiChirculete commented 6 years ago

Building on a Raspberry Pi 3 model b fails with the following error:

/tmp/ccEGtA04.s: Assembler messages: /tmp/ccEGtA04.s:58: Error: bad instructionint 3' scons: *** [cgame/build/release/gcc/32/cgame/cgame/cg_consolecmds.os] Error 1`

Command used to start the build: sudo bash build.sh

Full output of the build process:

`Building 3e16bf9 using 4 threads host: Linux target: Linux 32bit C compiler: gcc 6.3.0 C++ compiler: g++ 6.3.0 python: 2.7.13 at /usr/bin/python scons: 2.5.1 options: configuration: release instruction set: arm sql support: disabled notify support: enabled crash logging: enabled geoip support: enabled

scons: building associated VariantDir targets: game/build/release/gcc/32/game cJSON/build/release/gcc/32/game lua/build/release/gcc/32/game semver/build/release/gcc/32/game maxmind/build/release/gcc/32/game libudis86/build/release/gcc/32/game cgame/build/release/gcc/32/cgame cJSON/build/release/gcc/32/cgame lua/build/release/gcc/32/cgame semver/build/release/gcc/32/cgame ui/build/release/gcc/32/ui cJSON/build/release/gcc/32/ui libudis86/build/release/gcc/32/ui compiling: libudis86/decode.c compiling: libudis86/input.c compiling: libudis86/itab.c compiling: libudis86/syn-att.c compiling: libudis86/syn-intel.c compiling: libudis86/syn.c compiling: libudis86/udis86.c compiling: cJSON/cJSON.c compiling: JAPP/jp_crash.cpp compiling: JAPP/jp_tokenparser.cpp archiving: libudis86/build/release/gcc/32/ui/libudis86.a indexing: libudis86/build/release/gcc/32/ui/libudis86.a compiling: game/bg_animTable.cpp compiling: game/bg_misc.cpp archiving: cJSON/build/release/gcc/32/ui/libcJSON.a indexing: cJSON/build/release/gcc/32/ui/libcJSON.a compiling: game/bg_saberLoad.cpp compiling: game/bg_saga.cpp compiling: game/bg_threading.cpp compiling: game/bg_vehicleLoad.cpp game/bg_threading.cpp: In function 'void CheckTasks()': game/bg_threading.cpp:19:18: warning: deleting object of abstract class type 'TaskInterface' which has non-virtual destructor will cause undefined behavior [-Wdelete-non-virtual-dtor] delete tasks[i]; ^ compiling: game/bg_weapons.cpp compiling: qcommon/q_math.cpp compiling: qcommon/q_shared.cpp compiling: ui/ui_atoms.cpp compiling: ui/ui_cvar.cpp compiling: ui/ui_fonts.cpp compiling: ui/ui_force.cpp compiling: ui/ui_gameinfo.cpp compiling: ui/ui_main.cpp compiling: ui/ui_saber.cpp compiling: ui/ui_shared.cpp compiling: ui/ui_syscalls.cpp compiling: semver/semver.c semver/semver.c:78:1: warning: 'semver_is_alpha' defined but not used [-Wunused-function] semver_is_alpha (const char *s) { ^~~~~~~ archiving: semver/build/release/gcc/32/cgame/libsemver.a indexing: semver/build/release/gcc/32/cgame/libsemver.a compiling: lua/lapi.c compiling: lua/lauxlib.c compiling: lua/lbaselib.c compiling: lua/lbitlib.c compiling: lua/lcode.c compiling: lua/lcorolib.c compiling: lua/lctype.c compiling: lua/ldblib.c compiling: lua/ldebug.c compiling: lua/ldo.c compiling: lua/ldump.c compiling: lua/lfunc.c compiling: lua/lgc.c compiling: lua/linit.c compiling: lua/liolib.c compiling: lua/llex.c compiling: lua/lmathlib.c compiling: lua/lmem.c compiling: lua/loadlib.c compiling: lua/lobject.c compiling: lua/lopcodes.c compiling: lua/loslib.c compiling: lua/lparser.c compiling: lua/lstate.c compiling: lua/lstring.c compiling: lua/lstrlib.c compiling: lua/ltable.c compiling: lua/ltablib.c compiling: lua/ltm.c compiling: lua/lua.c compiling: lua/lundump.c compiling: lua/lutf8lib.c compiling: lua/lvm.c compiling: lua/lzio.c compiling: cJSON/cJSON.c compiling: JAPP/jp_crashExtra.cpp compiling: JAPP/jp_promode.cpp compiling: JAPP/jp_stack.cpp compiling: JAPP/jp_tokenparser.cpp archiving: cJSON/build/release/gcc/32/cgame/libcJSON.a indexing: cJSON/build/release/gcc/32/cgame/libcJSON.a compiling: cgame/cg_chatbox.cpp compiling: cgame/cg_consolecmds.cpp archiving: lua/build/release/gcc/32/cgame/liblua.a indexing: lua/build/release/gcc/32/cgame/liblua.a compiling: cgame/cg_draw.cpp compiling: cgame/cg_drawtools.cpp /tmp/ccEGtA04.s: Assembler messages: /tmp/ccEGtA04.s:58: Error: bad instruction int 3' scons: *** [cgame/build/release/gcc/32/cgame/cgame/cg_consolecmds.os] Error 1

Razish commented 6 years ago

Hm. First steps would be to kill off anything messing with inline assembly (since ARM won't have support for those instructions) and in general strip the build down until we get something working.

I don't currently have a pi setup to confirm right now, but try e.g.: build.sh no_crashhandler=1 no_notify=1 no_geoip=1.

I know I've built at-least the server on pi 1/B and pi 2/B, would be great to have it all working on the pi 3. I have a couple pi 3/B+ sitting on my work desk which I might tinker with :^)

Razish commented 11 months ago

I've since compiled and ran the server and client on RPi3b+ with the above options. Closing this to clean up old issues, feel free to open a new issue if this doesn't work.