I have build linuxcnc and glade 3.8.6 in a virtual machine with MINT 19 with success.
This are the steps I did:
Make our own linuxcnc system with MINT 19 (Tara)
first get the Image of Mint from
Code:
https://linuxmint.com/download.php
I choose the 64 bit release with Cinnamon
Install that release on your computer
My user is named linuxcnc and has the password linuxcnc,
please enter a password and select auto-login during setup!
so if you find in the following HowTo the user,
just replace with your name
with first reboot you will be asked to update your system,
please do so, update everything!
OK now your system is up to date,
Let's install the realtime preempt kernel
first we need to install some dependencies
Code:
sudo apt-get install build-essential kernel-package libncurses5-dev wget bzip2 libssl-dev
wget https://kernel.org/pub/linux/kernel/v4.x/linux-4.9.115.tar.xz
wget https://www.kernel.org/pub/linux/kernel/projects/rt/4.9/patch-4.9.115-rt93.patch.gz
tar -xpf linux-4.9.115.tar.xz
gunzip patch-4.9.115-rt93.patch.gz
cp patch-4.9.115-rt93.patch linux-4.9.115
cd linux-4.9.115
cat patch-4.9.115-rt93.patch | patch -p1
cp /boot/config-`uname -r` ./.config
make oldconfig
make menuconfig
check for "Fully Preemptible Kernel(RT)"
and do activate this option
Exit with save!
in the terminal now enter:
this will take a while, depending on your computer
go on with:
Code:
sudo make modules_install
sudo make install
After that step, I was forced to edit /etc/default/grub
as the grub menu did not appear and I was not able to select the realtime kernel.
I hat to comment :
Code:
#GRUB_TIMEOUT_STYLE=hidden
And then select the rt kernel
uname -a gave :
Code:
Linux linuxcnc 4.9.115-rt93 #1 SMP PREEMPT RT Sat Nov 24 17:09:54 CET 2018 x86_64 x86_64 x86_64 GNU/Linux
If this did work, you can delete the downloaded kernel packages in your home dir,
as they will occupy a lot of space and are not needed any more.
OK, lets get LinuxCNC from Source:
first need to install:
Code:
sudo apt-get install git git-gui gitk
and than clone the github
Code:
git clone https://github.com/LinuxCNC/linuxcnc.git linuxcnc-dev
as dpkg-checkbuilds needs assess to the source packages and as default the corresponding repositories are not enabled,
open synaptic from main menu, goto settings, packages and enable source code, check the corresponding box
close it and change to the terminal, enter
Code:
sudo apt-get update
cd linuxcnc-dev/debian
./configure uspace
you should get:
Code:
successfully configured for 'uspace-LinuxMint-18.2'-'uspace+xenomai'..
go on in the terminal
Code:
cd ..
dpkg-checkbuilddeps
should give you somethink like:
Code:
dpkg-checkbuilddeps: Fehler: Nicht erfüllte Bauabhängigkeiten: debhelper (>= 6) dh-python libudev-dev libxenomai-dev tcl8.6-dev tk8.6-dev libreadline-gplv2-dev asciidoc (>= 8.5) dblatex (>= 0.2.12) dvipng graphviz groff inkscape python-lxml source-highlight texlive-extra-utils texlive-font-utils texlive-fonts-recommended texlive-lang-cyrillic texlive-lang-french texlive-lang-german texlive-lang-polish texlive-lang-spanish texlive-latex-recommended w3c-linkchecker python-dev python-tk libxmu-dev libglu1-mesa-dev libgl1-mesa-dev | libgl1-mesa-swx11-dev libgtk2.0-dev intltool libboost-python-dev libmodbus-dev (>= 3.0) libusb-1.0-0-dev yapps2
just install all needed dependencies with:
Code:
sudo apt-get install debhelper dh-python libudev-dev libxenomai-dev tcl8.6-dev tk8.6-dev libreadline-gplv2-dev asciidoc dblatex dvipng graphviz groff inkscape python-lxml source-highlight texlive-extra-utils texlive-font-utils texlive-fonts-recommended texlive-lang-cyrillic texlive-lang-french texlive-lang-german texlive-lang-polish texlive-lang-spanish texlive-latex-recommended w3c-linkchecker python-dev python-tk libxmu-dev libglu1-mesa-dev libgl1-mesa-dev libgtk2.0-dev intltool libboost-python-dev libmodbus-dev libusb-1.0-0-dev yapps2
I had to install additionally:
Code:
sudo apt-get install bwidget
sudo apt-get install libtk-img
now go on with
Code:
cd src
./autogen.sh
./configure
make
sudo make setuid
cd ..
. ./scripts/rip-environment
linuxcnc
still not running, missed
Code:
sudo apt-get install python-gtkglext1
sudo apt-get install python-gtksourceview2
sudo apt-get install python-vte
OK we may need also glade 3.8.6 to make our own glade panels, so we need to install that:
If you followed this HowTo, you should not have installed glade, otherwise uninstall the official one
Code:
sudo apt-get remove glade
Code:
sudo apt-get install intltool python-gtk2-dev libxml2-dev gtk-doc-tools gnome-doc-utils liblablgtk2-gnome-ocaml-dev libglade2-dev python-gtkglext1 itstool
as we need an older version of libgladeui,
get it from here:
Code:
https://packages.ubuntu.com/trusty/amd64/libgladeui-1-11/download
and install with:
Code:
sudo dpkg --install /home/linuxcnc/Downloads/libgladeui-1-11_3.8.0-0ubuntu6_amd64.deb
get the source of glade 3.8.6
in the terminal enter:
Code:
wget ftp://ftp.gnome.org/pub/GNOME/sources/glade3/3.8/glade3-3.8.6.tar.xz
tar -xpf glade3-3.8.6.tar.xz
cd glade3-3.8.6
./configure
make
sudo make install
type
All OK?
Go On.
if that is also OK, we need to copy the hal widget glade catalog to the correct place.
backup the originals first
in the terminal enter:
Code:
sudo mkdir -p /usr/local/share/glade3/backup/catalogs
sudo mkdir -p /usr/local/share/glade3/backup/pixmaps
sudo cp /usr/local/share/glade3/catalogs/* /usr/local/share/glade3/backup/catalogs
sudo cp -r /usr/local/share/glade3/pixmaps/* /usr/local/share/glade3/backup/pixmaps
now copy/add the missing files to that dir with the following terminal commands
Code:
sudo cp ~/linuxcnc-dev/lib/python/gladevcp/*.xml /usr/local/share/glade3/catalogs
sudo cp ~/linuxcnc-dev/lib/python/gladevcp/*.png /usr/local/share/glade3/pixmaps
Now test in the terminal you did the command
Code:
cd
cd linuxcnc-dev
. ./scripts/rip-environment
just enter
last is to make to start scripts:
first to start linuxcnc in rip mode:
just make a directory bin in your home folder and
add a file linuxcnc.sh with the following content
Code:
#!/bin/bash
cd /home/linuxcnc/linuxcnc-dev
. ./scripts/rip-environment
linuxcnc
Make that file executable
On your desktop make a starter
Name = linuxCNC
Command = /home/linuxcnc/linuxcnc.sh
Commend = Start LinuxCNC
And check the box "Start in Terminal"
A icon to be used may be:
Code:
/home/linuxcnc/linuxcnc-dev/linuxcncicon.png
Click OK and try that one out
lets do another starter for glade:
add a file glade-3.sh with the following content to the created bin folder
Code:
#!/bin/bash
cd /home/linuxcnc/linuxcnc-dev
. ./scripts/rip-environment
glade-3
Make that file executable
On your desktop make a starter
Name = Glade-3
Command = /home/linuxcnc/glade-3.sh
Commend = Start Glade 3.8.6
And check the box "Start in Terminal"
A beautifull icon to be used may be:
Code:
/usr/share/icon/Mint-X/apps/48/glade-3.png
Click OK and try that one out
Now be happy