I wanted to build KiCad on my Ubuntu machine, but it missed some packages, therefore I made some instructions on how to get the (default) build to work. Tried it on a clean Ubuntu 20.04 VM and one other machine.
Because Ubuntu build instructions are not supposed to be on the developer documentation website, I’ll put it here.
To build on Ubuntu, you can install the following packages:
sudo apt install git cmake g++ libgl1-mesa-dev libglew-dev \
libglm-dev zlib1g-dev libcurl4-openssl-dev libcairo2-dev \
libboost-all-dev autoconf automake bison flex gcc git libtool\
make swig python-dev python-wxtools libwxgtk3.0-gtk3-dev \
python-wxgtk3.0-dev libgtk-3-dev libssl-dev
# ngspice install
cd <your kicad source mirror>/scripting/build_tools
sudo ./get_libngspice_so.sh
sudo ./get_libngspice_so.sh install
cd ../../../
# OCE install ( I wasn't able to get OCC to work)
wget https://github.com/tpaviot/oce/archive/refs/tags/OCE-0.18.3.tar.gz
tar -xf OCE-0.18.3.tar.gz
cd oce-OCE-0.18.3/
mkdir build
cd build
cmake ..
make # -j $(nproc)
sudo make install/strip
cd ../../
# continue with normal build
I hope this helps anyone looking on how to get it to build.
There’s an easier way to get most of the dependencies. Enable the nightly builds ppa with source and use “apt-get build-dep” for kicad-nightly. The same strategy works for Fedora, too, using “dnf builddep”. Probably this works for almost all distros provided that they have a repository for the corresponding KiCad version.
Sadly, when I tried to upgrade Kubuntu, it stopped working altogether and I had to try other distros. I’m now testing OpenSUSE Leap but it seems to be hostile to KiCad development: there’s no working wxWidgets available if I want to build with python3 support. Nobody offers nightly builds for that distro, not even Tumbleweed (the rolling release).
I have written generic instructions for building KiCad on Linux the easy way, and at the moment specific instructions for SuSE Tumbleweed. Yes, I managed to build KiCad 5.99 on Tumbleweed with python3 enabled.
Instructions for Ubuntu, Fedora and possibly some others are forthcoming. I know already that the same procedure works on Ubuntu and Fedora.
Maybe draw the attention of the KiCad packages maintainer to this so that they can incorporate your instructions into the rpmbuild spec file to automate the process and finally provide Py3 support?