LinuxCNC/Machinekit on i.MX6 board
If you are running Xenomai then the pre-built packages from the buildbot probably won't work. So I think that building from source makes sense.
You need to get the source. You can download it from the green button here.
(It might make sense to install git and clone the repository, especially if you think that there is any chance that you might end up submitting changes back to the project, perhaps related to supporting your platform. But downloading the .zip ought to work too).
You need to configure before the build dependencies list can be calculated.
cd linuxcnc-dev/src ./autogen.sh ./configure --with-realtime=xenomai
Then install the dependencies. I tend to just do what it says here, then edit the resulting output into an apt-get command by removing duplicates / options and version numbers:
Then LinuxCNC ought to compile.
make sudo make setuid
At this point you should have a working LinuxCNC system installed as a "run-in-place" system, ie in the linuxcnc-dev directory rather than in /usr/bin. To run this you need to run a script
then the command "linuxcnc" will start LinuxCNC.
We can worry about getting a version that will run from the menus and/or run without the script if and when we get as far as a running LinuxCNC.
Your reply is very useful to me, now I have already completed the compilation, but a bit of a problem. I was based on this tutorial to install Xenomai, confirmed that Xenomai can be normal operation.
The build results in the following packages:
xenomai-runtime – Xenomai runtime utilities
libxenomai1 – Shared libraries for Xenomai
libxenomai-dev – Headers and static libraries for Xenomai
xenomai-kernel-source – Sources of the Xenomai 2.x kernel
xenomai-doc – Xenomai documentation
First, I follow your steps ./configure --with-realtime=xenomai , this steps output error "can't find kernel version" and I found the check is "xeno-config: none". So, I try other way.
Second, also this step ./configure --with-realtime=uspace , I installed a lot depend on finally succeeded,and xenomai is check succeeded, found the xeno-config.
Third, use dpkg-checkbuilddeps install all of dependencies then make and sudo make setuid and ../linuxcnc-dev/scripts/rip-environment,run succeedful.
Fourth, run the linuxcnc on shell have problem,
LINUXCNC - 2.8.0~pre1
Machine configuration directory is '/home/linaro/linuxcnc-dev/configs/sim/axis'
Machine configuration file is 'axis.ini'
/home/linaro/linuxcnc-dev/scripts/linuxcnc: line 752: 22336 Segmentation fault (core dumped) $HALCMD loadusr -Wn iocontrol $EMCIO -ini "$INIFILE"
/home/linaro/linuxcnc-dev/scripts/linuxcnc: line 763: 22339 Segmentation fault (core dumped) $HALCMD loadusr -Wn halui $HALUI -ini "$INIFILE"
Found file(lib): /home/linaro/linuxcnc-dev/lib/hallib/core_sim.hal
Note: Using POSIX non-realtime
/home/linaro/linuxcnc-dev/scripts/linuxcnc: line 823: 22346 Segmentation fault (core dumped) $HALCMD -i "$INIFILE" -f $CFGFILE
Shutting down and cleaning up LinuxCNC...
/home/linaro/linuxcnc-dev/scripts/linuxcnc: line 571: 22373 Segmentation fault (core dumped) $HALCMD unload all
LinuxCNC terminated with an error. You can find more information in the log:/home/linaro/linuxcnc_debug.txt and /home/linaro/linuxcnc_print.txt
I am just not entirely sure if uspace is the right configure option for xenomai. I am also not sure if you are running on your Xenomai-patched kernel. Did you add "Xenomai" to the name?