Hi! In a previous post where I wrote about the CNC Software Toolchain for Linux I mentioned HeeksCAD, which is a great software to generate the toolpaths from the 3D models for CNC machining. Since I upgraded to Ubuntu 12.04 I started having some problems with the HeeksCNC plugin and some features like the pocketing and profile operations stopped working. I tried to reinstall it in Ubuntu 12.04 but then I found out that it wasn’t a so straight forward process as with previous Ubuntu versions. As such, I decided to make a small tutorial on how to install it under Ubuntu 12.04 Precise Pangolin.
So, the first trick is that you cannot install the official version from the official HeeksCAD git repository.
The official one does not have the install script for Ubuntu nor some changes to support newer versions of a few libraries that are required for Ubuntu 12.04. You will have to checkout a specific commit made to the sliptonic repository. Make sure you have git installed, open a terminal and enter:
git clone --recursive git://github.com/sliptonic/heekscad.git cd heekscad/ chmod +x INSTALL_UBUNTU.sh ./INSTALL_UBUNTU.sh
It will probably prompt you for your admin password and after you enter it, it will install heekscad and some libraries and your heekscad installation will be done. By the way, after starting the installation, go make yourself a sandwich and find something to do while it installs. It will take some time. (By the way, here‘s a discussion on the installation from the ShapeOko forums)
After doing the step that I just described, my HeeksCAD installation wasn’t ok. I still had some previous versions of some libraries installed that were causing some incompatibilities and I still had to fix some stuff. More specifically, I was getting the error:
ImportError: /usr/local/lib/python2.7/dist-packages/area.so: undefined symbol: _ZNK5boost6python7objects21py_function_impl_base9max_arityEv
which then I found out to be the same error as reported in Issue 18. The libarea version that I already had installed was messed up and had to fix it. Here’s what I did to fix it:
Located the “area.so” files that I had and removed them:
$ locate area.so /usr/lib/python2.7/dist-packages/area.so /usr/local/lib/python2.7/dist-packages/area.so $ sudo rm /usr/lib/python2.7/dist-packages/area.so $ sudo rm /usr/local/lib/python2.7/dist-packages/area.so
Downloaded the CMakeLists.txt for the libarea project and placed it inside /heekscad/heekscnc/libarea folder, being /heekscad the folder with the files from the previously referred git checkout. After that, I installed libarea with cmake. Here are the commands to download the CMakeLists.txt and install libarea:
wget https://github.com/aewallin/libarea/blob/c14684cf0ab9ec28c6d810cb1cf96ebbe9a8aa03/CMakeLists.txt cmake . make sudo make install
- And libarea was fixed and I had HeeksCAD and HeeksCNC running as desired.
If you’re unlucky like me and for some weird reason some things are not working properly, there are a few things that you might want to try:
- Install libarea as described above;
Reinstall HeeksCNC manually with cmake. In the terminal go to the heekscnc folder and enter:
cmake . make sudo make install
Reinstall HeeksCAD manually with cmake. In the terminal go to the heekscad folder and enter:
cmake . make sudo make install
Hopefully the first part of this How to will be enough for you to get it working. If it’s not, then hopefully the second part will get you on tracks. 🙂
Did you find this post helpful? Do you wish to contribute to other projects regarding computer science, electronics, robotics or mechatronics that will be posted in this blog? If you wish to do so, you can donate via paypal using the button below. Thanks! 🙂