So, there are two ways of building kernel modules with GNU11 instead of gnu89 
or C99.

1.) Do it in RTAI:

https://github.com/NTULINUX/RTAI/commit/a649bbb40fad9299ba31285276d9204df2f222d9

2.) Do it in LinuxCNC:

https://github.com/NTULINUX/linuxcnc/commit/a76b69f7e66f7a3831be655ea3dde4590502a175

The first commit builds both the RTAI math module (rtai_math.ko) and musl with 
GNU11 (thorough explanation in git message.)

The second is more conservative; building only the LinuxCNC modules with GNU11.

I think it makes more sense doing this in RTAI so everything just matches.

I hacked away at the LinuxCNC sources to try and get a successful build going 
but now I'm getting this:

Reading 205/205 dependency files
Done reading dependencies
MAKEFLAGS="" \
/usr/bin/python3.11 modsilent.py make 
KBUILD_EXTRA_SYMBOLS=/usr/realtime/modules/Module.symvers -C 
/lib/modules/4.19.294-rtai-amd64/build M=/home/ntu/linuxcnc/src CC=gcc V=0 
modules
make[1]: Entering directory '/usr/src/linux-headers-4.19.294-rtai-amd64'
  Building modules, stage 2.
  MODPOST 213 modules
WARNING: "hal_param_u64_new" [/home/ntu/linuxcnc/src/hal_lib.ko] undefined!
WARNING: "hal_param_s64_newf" [/home/ntu/linuxcnc/src/hal_lib.ko] undefined!
WARNING: "hal_param_u64_newf" [/home/ntu/linuxcnc/src/hal_lib.ko] undefined!
WARNING: "hal_param_s64_new" [/home/ntu/linuxcnc/src/hal_lib.ko] undefined!
make[1]: Leaving directory '/usr/src/linux-headers-4.19.294-rtai-amd64'

dmesg when trying to start latency-test:

[ 6404.916638] hal_lib: Unknown symbol hal_param_s64_new (err -2)
[ 6404.916646] hal_lib: Unknown symbol hal_param_u64_newf (err -2)
[ 6404.916660] hal_lib: Unknown symbol hal_param_s64_newf (err -2)
[ 6404.916666] hal_lib: Unknown symbol hal_param_u64_new (err -2)

Any help is greatly appreciated.

Alec


_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to