SDL-Hercules-390 / hyperion

The SDL Hercules 4.x Hyperion version of the System/370, ESA/390, and z/Architecture Emulator
Other
247 stars 92 forks source link

Make fails on Raspberry Pi 3 #445

Closed rgschmi closed 2 years ago

rgschmi commented 2 years ago

I'm trying to install Hercules on my Raspberry Pi using hercules-helper. Everything seems to run fine, until make fails. This is a full hercules-helper install, except for no-rexx. This is the make output:

time make -j 6 2>&1
make  all-recursive
make[1]: Entering directory '/home/rgschmi/hercules-helper/herctest/hyperion/build'
Making all in m4
make[2]: Entering directory '/home/rgschmi/hercules-helper/herctest/hyperion/build/m4'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/rgschmi/hercules-helper/herctest/hyperion/build/m4'
Making all in util
make[2]: Entering directory '/home/rgschmi/hercules-helper/herctest/hyperion/build/util'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/rgschmi/hercules-helper/herctest/hyperion/build/util'
Making all in html
make[2]: Entering directory '/home/rgschmi/hercules-helper/herctest/hyperion/build/html'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/rgschmi/hercules-helper/herctest/hyperion/build/html'
Making all in man
make[2]: Entering directory '/home/rgschmi/hercules-helper/herctest/hyperion/build/man'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/rgschmi/hercules-helper/herctest/hyperion/build/man'
Making all in .
make[2]: Entering directory '/home/rgschmi/hercules-helper/herctest/hyperion/build'
  CC       cckdcdsk.o
  CC       hsys.lo
  CC       codepage.lo
  CC       hexdumpe.lo
  CC       hdl.lo
  CC       hostinfo.lo
../cckdcdsk.c:1:0: error: unknown value 'native' for -march
 /* CCKDCDSK.C   (C) Copyright Roger Bowler, 1999-2012                */
 ^
Makefile:2467: recipe for target 'cckdcdsk.o' failed
make[2]: *** [cckdcdsk.o] Error 1
make[2]: *** Waiting for unfinished jobs....
../codepage.c:1:0: error: unknown value 'native' for -march
 /* CODEPAGE.C   (C) Copyright Jan Jaeger, 1999-2012                  */
 ^
../hexdumpe.c:1:0: error: unknown value 'native' for -march
 /* HEXDUMPE.C   (C) Copyright "Fish" (David B. Trout), 2014-2015     */
 ^
Makefile:2481: recipe for target 'codepage.lo' failed
make[2]: *** [codepage.lo] Error 1
Makefile:2481: recipe for target 'hexdumpe.lo' failed
make[2]: *** [hexdumpe.lo] Error 1
../hdl.c:1:0: error: unknown value 'native' for -march
 /* HDL.C        (C) Copyright Jan Jaeger, 2003-2012                  */
 ^
Makefile:2481: recipe for target 'hdl.lo' failed
make[2]: *** [hdl.lo] Error 1
../hostinfo.c:1:0: error: unknown value 'native' for -march
 /* HOSTINFO.C   (C) Copyright "Fish" (David B. Trout), 2002-2012     */
 ^
Makefile:2481: recipe for target 'hostinfo.lo' failed
make[2]: *** [hostinfo.lo] Error 1
../hsys.c:1:0: error: unknown value 'native' for -march
 /* HSYS.C       (C) Copyright Roger Bowler, 1999-2012                */
 ^
Makefile:2481: recipe for target 'hsys.lo' failed
make[2]: *** [hsys.lo] Error 1
make[2]: Leaving directory '/home/rgschmi/hercules-helper/herctest/hyperion/build'
Makefile:2531: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/rgschmi/hercules-helper/herctest/hyperion/build'
Makefile:1867: recipe for target 'all' failed
make: *** [all] Error 2

real    0m9.628s
user    0m11.841s
sys     0m1.772s
[[ error: ]] Make failed!
finish() called, exit status = 1

hercules-helper seems pretty straight forward, so I don't think I missed anything.

Bob

wrljet commented 2 years ago

It's always something.

I'll boot up a Pi 3 and get it fixed for you.

Can you post this issue over on the Hercules-Helper repo, and please include a zipped up copy of the output log. Filename will be of the form: hyperion-buildall-2021-xxx.log

That will tell me exactly what Pi you're using, what OS, etc.

https://github.com/wrljet/hercules-helper

Bill

rgschmi commented 2 years ago

Done...

wrljet commented 2 years ago

The initial problem was caused by a bug in Hercules-Helper, which was unaware that gcc 4.8.5 from that old openSUSE Leap 42.2 system didn't accept the -march=native for aarch64 ARM processors.

I changed things so -march=native would not be used without first testing if the compiler actually accepts it.

With that fixed, gcc then crashed with an internal compiler error, farther into the process.

Bob updated his Pi 3B to openSUSE Leap 15.2 (which is where I did my investigation) and things work correctly there.

I will continue to work with Bob to improve Hercules-Helper for his setup, but I think it's safe to ignore gcc of that age on Raspberry Pi 3B from the Hercules point of view itself. So I am closing this issue.

Bill

Fish-Git commented 2 years ago

With that fixed, gcc then crashed with an internal compiler error, farther into the process.

(LOL!) Boy, when it rains it POURS! Eh?   :`D

wrljet commented 2 years ago

(LOL!) Boy, when it rains it POURS! Eh? :`D

Yes