Tuesday, September 27, 2016

Building compling installing linuxcnc on Ubuntu Studio 16

I want to share with you how to build linuxcnc on Ubuntu Studio 16.

Why is this so important?

I want an open toolchain, so I'm working with linuxcnc and freecad.

It's tough to install both on the same machine at that bleeding intersection since 1. linuxcnc lags Debian releases somewhat and 2. linuxcnc requires realtime kernel, while 3. freecad is a new project in explosive development (with no expectation of supporting older Debian releases presumeably?).  At the moment, freecad-daily is non-trivial to run on the current 2.7-linuxcnc install iso.  They're off by one Debian release. 

Hypthesis: Ubuntu 16 Studio to the rescue!

My hypothesis is to run freecad and linuxcnc under Ubuntu 16 Studio to leverage the realtime kernel.  Anyone out there doing this btw?

Here are my steps to compile linuxcnc on Ubuntu16 Studio.  Linuxcnc runs all 100+ unit tests with no warnings or errors and 'linuxcnc' from the command line starts the program.  I have not (yet!) configured a machine or calibrated the servo threads.

Future attempts to run freecad-daily there may be made.

 1162  git clone git://git.linuxcnc.org/git/linuxcnc.git linuxcnc-dev
 1164  cd linuxcnc-dev/
 1166  cd src
 1174  sudo apt install libmodbus-dev
 1176  sudo apt install libusb-1.0-0-dev
 1182  sudo apt install libglib2.0-dev
 1184  sudo apt install libgtk2.0-dev
 1186  sudo apt install bwidget
 1188  sudo apt install libtk-img
 1190  sudo apt install tclx
 1196  sudo apt install libreadline-dev
 1199  sudo apt install tcl8.6-dev
 1201  sudo apt install tk8.6-dev
 1204  sudo apt install libboost-python-dev
 1208  sudo apt install libxmu-dev
 1209  ./configure --with-realtime=uspace --enable-non-distributable=yes
 1210  make
 1211  sudo make setuid
 1212  source ../scripts/rip-environment
 1213  runtests
 1214  linuxcnc


* http://linuxcnc.org/
* http://wiki.linuxcnc.org/cgi-bin/wiki.pl?LinuxCNCKnowledgeBase
* http://noahvawter.blogspot.com/2016/09/building-compling-installing-linuxcnc.html
* https://github.com/LinuxCNC/linuxcnc
* http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Installing_EMC2
* http://linuxcnc.org/docs/devel/html/code/building-linuxcnc.html