Yes, but please note if anyone comes back to this thread in the future, the exact command changes over time, so make sure to confirm it via the method described above.
What was the linked PPA? I tried sudo add-apt-repository --yes ppa:kicad/kicad-dev-nightly
but still can’t get ibngspice-kicad-dev libngspice-kicad
Hmm, that is the one I have
$ apt show libngspice-kicad
Package: libngspice-kicad
Version: 0.1-40~202311202316+6eeb48bb5~ubuntu22.04.1
Priority: optional
Section: electronics
Source: ngspice-kicad
Maintainer: Jean-Samuel Reynaud <js.reynaud@gmail.com>
Installed-Size: 8,429 kB
Depends: libc6 (>= 2.35), libgcc-s1 (>= 3.0), libgomp1 (>= 4.9), libstdc++6 (>= 4.5), dpkg (>= 1.15.4) | install-info
Conflicts: libngspice0
Breaks: libngspice0, ngspice-kicad
Replaces: ngspice-kicad
Download-Size: 2,418 kB
APT-Sources: https://ppa.launchpadcontent.net/kicad/kicad-dev-nightly/ubuntu jammy/main amd64 Packages
Description: Library (shared) for ngspice. Used by kica
Naive question but is the PPA supporting the recent 23.10?
It looks like we haven’t published ngspice for 23.10 yet. The most recent supported is 23.04. I can try enabling it and see if it works in a bit.
You can still build on 23.10, you’ll just need to build ngspice yourself.
No worries, I’m interested in actually digging into ngspice itself (for simulations and tests in XR once the glTF is exported thanks to kicad-cli) so good occasion!
The PPA should have the package now
Getting libngspice-kicad
but not libngspice-kicad-dev
.
Yes, I’m not sure how to make the dev package, I’ll have to defer to one of our Ubuntu/Debian packagers.
For ref, below full recipe for building on Ubuntu and also Windows Subsystem for Linux (I just tested now on Ubuntu WSL).
Note I wouldn’t recommend WSL building as you’ll probably run into graphical gitches due to WSL as well as slowing it down but it’s fun to build linux on windows.
sudo add-apt-repository ppa:kicad/kicad-dev-nightly
sudo apt update
sudo apt install cmake libbz2-dev libcairo2-dev libglu1-mesa-dev libgl1-mesa-dev libglew-dev libx11-dev libwxgtk3.2-dev mesa-common-dev pkg-config libssl-dev build-essential cmake-curses-gui debhelper grep python3-dev swig4.0 dblatex po4a asciidoc python3-wxgtk4.0 libgit2-dev libsecret-1-dev source-highlight libboost-all-dev libglm-dev libcurl4-openssl-dev libgtk-3-dev libngspice-kicad-dev libngspice-kicad libocct-modeling-algorithms-dev libocct-modeling-data-dev libocct-data-exchange-dev libocct-visualization-dev libocct-foundation-dev libocct-ocaf-dev unixodbc-dev zlib1g-dev shared-mime-info libngspice-kicad ninja-build
git clone https://gitlab.com/kicad/code/kicad.git
cd kicad
mkdir -p build/debug
cd build/debug
cmake -DCMAKE_BUILD_TYPE=Debug ../../
make
Regarding your comment:
You might be missing a sudo apt update
after adding the ppa repository to your configuration (sorry I forgot this step when presenting this)
Unfortunately I did update, will try again as the -dev
package hits the repo though. Thanks
Actually it looks like it is there: Packages in “PPA for KiCad: nightly builds of dev version with s...” : PPA for KiCad: nightly builds of dev version with separation stable/nightly : “KiCad” team
It looks like the official build instructions have been changed after the last time I have looked at them. Instead of providing lists of dependencies it now refers to nightly packages and their up to date dependency lists which is a good thing.
I have written instructions which basically automate this dependency finding, see How to build KiCad on Linux (the easy way) · Wiki · eelik-kicad / kicad · GitLab.
For Ubuntu it’s as easy as
sudo add-apt-repository -s --yes ppa:kicad/kicad-dev-nightly
sudo apt build-dep kicad-nightly
This way there’s no need to copy/paste/write any dependency list. If the nightly build has been built by someone else already recently, it can be built after running those two commands (unless, of course, the package maintainer has done some mistake).
Because building and linking takes a little while, would it be possible to mention estimations of speed-ups gained by using e.g ninja, or mold? For this process would it become 1% faster? 10%?
I’m not an expert, but first you have to understand that ninja or some other similar build system doesn’t help at the first time build. It’s good for “incremental builds”, i.e. small edit->build cycles. For example, pulling even as often as once a day from the master git branch while development is ongoing results often to almost complete rebuild, and ninja doesn’t probably help much.
The linker has probably more effect. It depends on how many files must be linked. In any case I tried mold and I got a feeling that it reduces the build time considerably – more than changing from pure make to ninja. I have noticed earlier that linking one file may take longer time than compiling.
These are based on gut feelings, not on a timer.
Ok thanks, I’m at 47% with the default setup so I’ll just wait for this time. If I tinker regularly might switch to ninja
and mold
then.
Edit: yeay, got KiCAD 8.0.0 and can use kicad-cli
for my tinkers, thanks for the help!
This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.