danmons / mame_raspberrypi_cross_compile

MAME Cross Compile Environment
GNU General Public License v3.0
20 stars 2 forks source link

crosstool-ng HEAD requires Autoconf 2.71 or later (breaks build on Bullseye) #2

Closed grantek closed 1 year ago

grantek commented 1 year ago

Running ./build_crosstool-ng.sh on a clean Debian Bullseye system gives:

configure.ac:4: error: Autoconf version 2.71 or higher is required

Modifying build_crosstool-ng.sh to check out the tag crosstool-ng-1.25.0 instead of always git pulling to HEAD allows the crosstool-ng build to continue.

I won't raise a separate bug but I also needed to bump the zlib version to 1.2.13 (in the ./crosstool-ng/ctng_config_rpi* files) to be able to download it from www.zlib.net. The Sourceforge mirror only goes up to 1.2.11.

wvalcke commented 1 year ago

There are more issues than only this....

[l...] armv8-rpi3-linux-gnueabihf Languages : C,C++ OS : linux-5.15.32 Binutils : binutils-2.35 Compiler : gcc-10.2.0 C library : glibc-2.31 Debug tools : gdb-11.2 Companion libs : expat-2.4.1 gettext-0.21 gmp-6.2.1 isl-0.24 libiconv-1.16 mpc-1.2.1 mpfr-4.1.0 ncurses-6.2 zlib-1.2.13 Companion tools : [INFO ] Performing some trivial sanity checks [ERROR] Don't set LD_LIBRARY_PATH. It screws up the build. [ERROR]
[ERROR] >> [ERROR] >> Build failed in step '(top-level)' [ERROR] >> [ERROR] >> Error happened in: CT_Abort[scripts/functions@487] [ERROR] >> called from: CT_TestAndAbort[scripts/functions@507] [ERROR] >> called from: main[scripts/crosstool-NG.sh@58] [ERROR] >> [ERROR] >> For more info on this error, look at the file: 'build.log'

wvalcke commented 1 year ago

Unseting LD_LIBRARY_PATH gives a cross compiler. But after ./build_mame_armhf.sh it fails again

GCC version 7.0 or later needed make: [makefile:1281: build/projects/sdl/mame/gmake-linux/Makefile] Error 255 make: Waiting for unfinished jobs.... Compressing...

danmons commented 1 year ago

Running ./build_crosstool-ng.sh on a clean Debian Bullseye system gives:

configure.ac:4: error: Autoconf version 2.71 or higher is required

Modifying build_crosstool-ng.sh to check out the tag crosstool-ng-1.25.0 instead of always git pulling to HEAD allows the crosstool-ng build to continue.

I won't raise a separate bug but I also needed to bump the zlib version to 1.2.13 (in the ./crosstool-ng/ctng_config_rpi* files) to be able to download it from www.zlib.net. The Sourceforge mirror only goes up to 1.2.11.

Thanks for reporting this. I'll build a clean Debian 11 Bullseye VM later in the week and sort this out.

I'm currently running this myself on Ubuntu 22.04 LTS "Jammy" systems, but happy to support Debian too.

danmons commented 1 year ago

Unseting LD_LIBRARY_PATH gives a cross compiler. But after ./build_mame_armhf.sh it fails again

Crosstool-ng doesn't like any external LD_LIBRARY_PATHs set at all (which shouldn't happen by default in a clean shell unless the user has modified their .bashrc or something similar). I'll specifically unset that in all the scripts and push that when I fix the above Bullseye stuff as well.

danmons commented 1 year ago

I think we're in a good spot now. Changes made for the Bullseye versions:

Doing a full rebuild of the ct-ng components now inside a Ubuntu 22.04LTS container, and everything seems happy. Thank you very much for all who notified me and tested things.