Wie man pyspice OSError behebt: cannot load library 'libngspice.so'

Problem:

Beim Versuch, ein PySpice-Programm auszuführen, sehen Sie eine Fehlermeldung wie

pyspice_libngspice_error.txt
OSError: cannot load library 'libngspice.so': libngspice.so: cannot open shared object file: No such file or directory.  Additionally, ctypes.util.find_library() did not manage to locate a library called 'libngspice.so'

Lösung

Installieren Sie libngspice, oft libngspice0 genannt.

Installieren Sie es auf Ubuntu mit

install_libngspice0_dev.sh
sudo apt -y install libngspice0-dev

Sie müssen die -dev-Bibliothek installieren, da libngspice0 nur libngspice.so.0 enthält, während die -dev-Bibliothek libngspice.so enthält, das von pyspice benötigt wird.

Lösung (mit installiertem KiCad auf Linux)

KiCad installiert automatisch libngspice-kicad, das libngspice.so.0 bereitstellt, aber mit libngspice0 und libngspice0-dev kollidiert. Um dies zu beheben, können Sie einen Symlink erstellen:

symlink_libngspice.sh
sudo ln -sf /usr/lib/x86_64-linux-gnu/libngspice.so.0 /usr/lib/x86_64-linux-gnu/libngspice.so

Danach starten Sie Ihr Python-Skript neu, das nun funktionieren sollte.


Check out similar posts by category: Python, SPICE