Greetings,
I disclaim any knowledge of C or Makefiles, but if I comment out the check for _FEATURES_H in config.h (as below), the vm builds fine on and for Aarch64 Linux.
/* @#ifdef _FEATURES_H @#error This file was included too late. Please make sure it is included earlier @#endif */
I have no idea what this is checking for or who sets it.
The diagnostic output is:
vvv===vvv gcc -Wall -march=armv8-a -mtune=cortex-a72 -g -O2 -DNDEBUG -DDEBUGVM=0 -DMUSL -D_GNU_SOURCE -DUSEEVDEV -DCOGMTVM=0 -DDUAL_MAPPED_CODE_ZONE=1 -pthread -DLSB_FIRST=1 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -DHAVE_CONFIG_H -DSQUEAK_BUILTIN_PLUGIN -I/home/kend/OpenSmalltalk/oscogvm/build.linux64ARMv8/squeak.cog.spur/build -I/home/kend/OpenSmalltalk/oscogvm/build.linux64ARMv8/squeak.cog.spur/build -I/home/kend/OpenSmalltalk/oscogvm/platforms/unix/vm -I/home/kend/OpenSmalltalk/oscogvm/platforms/Cross/vm -I/home/kend/OpenSmalltalk/oscogvm/spur64src/vm -I/usr/local/include -I/home/kend/OpenSmalltalk/oscogvm/platforms/Cross/vm -I/home/kend/OpenSmalltalk/oscogvm/platforms/unix/vm -I/home/kend/OpenSmalltalk/oscogvm/spur64src/vm -I/home/kend/OpenSmalltalk/oscogvm/platforms/Cross/plugins/FilePlugin -I/home/kend/OpenSmalltalk/oscogvm/platforms/unix/plugins/B3DAcceleratorPlugin -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -c -o gcc3x-cointerp.o /home/kend/OpenSmalltalk/oscogvm/spur64src/vm/gcc3x-cointerp.c In file included from /home/kend/OpenSmalltalk/oscogvm/platforms/unix/vm/sqConfig.h:5, from /home/kend/OpenSmalltalk/oscogvm/platforms/Cross/vm/sq.h:18, from /home/kend/OpenSmalltalk/oscogvm/platforms/unix/vm/sqGnu.h:37, from /home/kend/OpenSmalltalk/oscogvm/spur64src/vm/gcc3x-cointerp.c:29: /home/kend/OpenSmalltalk/oscogvm/build.linux64ARMv8/squeak.cog.spur/build/config.h:40:2: error: #error This file was included too late. Please make sure it is included earlier 40 | #error This file was included too late. Please make sure it is included earlier | ^~~~~ ^^^===^^^
?!? -KenD