Linux Mint 19 LinuxCNC

Open a terminal from Menu > System Tools > Terminal

First lets make sure we have the Preempt RT kernel loaded

uname -a

Should report back the following with PREEMPT RT being the important part.

Linux mint19 4.19.1-rt3 #1 SMP PREEMPT RT Thu Jan 10 06:58:44 CST 2019 x86_64 x86_64 x86_64 GNU/Linux

Now we will clone LinuxCNC

sudo apt-get update
sudo apt-get install -y devscripts build-essential
git clone https://github.com/LinuxCNC/linuxcnc.git emc
cd emc

Do not close this Terminal we will use it again.

Pick the branch you want to build 2.7, 2.8, or for Master (2.9pre) skip this step.

git checkout 2.7
or
git checkout 2.8

Enable Source Code Repositories

Menu > Administration > Synaptic Package Manager

Settings > Repositories > Enable Source Code Repositories

After enabling the Source Code Repositories just close that window without updating and close the Synaptic Package Manager.

In the same Terminal we will update the cache and make sure Linux Mint is up to date.

sudo apt-get update
sudo apt-get dist-upgrade

In the same Terminal we will install the dependencies

sudo apt-get install -y debhelper dh-python libudev-dev libxenomai-dev
sudo apt-get install -y tcl8.6-dev tk8.6-dev libreadline-gplv2-dev
sudo apt-get install -y asciidoc dblatex dvipng graphviz groff
sudo apt-get install -y imagemagick inkscape python-lxml source-highlight
sudo apt-get install -y texlive-extra-utils texlive-font-utils
sudo apt-get install -y texlive-fonts-recommended texlive-lang-cyrillic
sudo apt-get install -y texlive-lang-french texlive-lang-german
sudo apt-get install -y texlive-lang-polish texlive-lang-spanish
sudo apt-get install -y texlive-latex-recommended w3c-linkchecker
sudo apt-get install -y asciidoc-dblatex python-dev python-tk
sudo apt-get install -y libxmu-dev libglu1-mesa-dev libgl1-mesa-dev
sudo apt-get install -y libgtk2.0-dev libboost-python-dev
sudo apt-get install -y libmodbus-dev libusb-1.0-0-dev yapps2
sudo apt-get update

In the same Terminal we will build configure and check for missing dependencies.

debian/configure uspace
dpkg-checkbuilddeps

If your missing any dependencies install them as above.

In the same Terminal we will build the debs (deb is a compressed file that contains a program that can be installed)

debuild -uc -us

Open the file manager from Menu > System Tools > File Manager and in your home directory right click on linuxcnc-uspace_2.8.0~pre1_amd64.deb and select Open with GDebi Package Installer then click Install Package. It will install a few more dependencies.

For the documents install linuxcnc-doc-en_2.8.0~pre1_all.deb in the same manner.

Go to Menu > Preferences > Main Menu click on CNC on the left side then uncheck each item on the right then recheck them or they don’t show up for some reason. You can delete the Vietnamese menu item. Close the Main Menu and now LinuxCNC can be ran from Menu > CNC > LinuxCNC

Open a new terminal and issue the following to stop LinuxCNC from being a PIA about quitting.

echo 'root_window.tk.call("wm","protocol",".","WM_DELETE_WINDOW","destroy .")' > .axisrc

If you’re using a Mesa Ethernet card go to the Linux Mint 19 Ethernet page and set up the NIC