|
|
@ -1,7 +1,7 @@ |
|
|
Ngspice installation instructions |
|
|
Ngspice installation instructions |
|
|
================================= |
|
|
================================= |
|
|
|
|
|
|
|
|
Important notice: with ngspice-35 there has been an update |
|
|
|
|
|
|
|
|
Important notice: since ngspice-35 there has been an update |
|
|
to the XSPICE code models (analog.cm etc.). Therefore it |
|
|
to the XSPICE code models (analog.cm etc.). Therefore it |
|
|
is not sufficient to only re-make the main executable, |
|
|
is not sufficient to only re-make the main executable, |
|
|
you will have to compile and install the code models as well, |
|
|
you will have to compile and install the code models as well, |
|
|
@ -11,7 +11,7 @@ Table of contents |
|
|
|
|
|
|
|
|
1 Ngspice installation (LINUX) |
|
|
1 Ngspice installation (LINUX) |
|
|
1.1 Prerequisites |
|
|
1.1 Prerequisites |
|
|
1.2 Install from tarball (e.g. ngspice-35.tar.gz) |
|
|
|
|
|
|
|
|
1.2 Install from tarball (e.g. ngspice-36.tar.gz) |
|
|
1.3 Install from git repository |
|
|
1.3 Install from git repository |
|
|
1.4 ngspice as a shared library |
|
|
1.4 ngspice as a shared library |
|
|
1.5 Advanced Install |
|
|
1.5 Advanced Install |
|
|
@ -32,6 +32,10 @@ Table of contents |
|
|
9.4 ngspice console app with MINGW or CYGWIN |
|
|
9.4 ngspice console app with MINGW or CYGWIN |
|
|
9.5 cross compiling ngspice for Windows from LINUX |
|
|
9.5 cross compiling ngspice for Windows from LINUX |
|
|
10 NGSPICE COMPILATION UNDER macOS |
|
|
10 NGSPICE COMPILATION UNDER macOS |
|
|
|
|
|
10.1 Use precompiled binary package |
|
|
|
|
|
10.2 Compile NGSPICE manually from a tarball |
|
|
|
|
|
10.3 Compile NGSPICE manually from git |
|
|
|
|
|
10.4 About compilers |
|
|
|
|
|
|
|
|
This file describes the procedures to install ngspice from sources. |
|
|
This file describes the procedures to install ngspice from sources. |
|
|
|
|
|
|
|
|
@ -60,7 +64,7 @@ This file describes the procedures to install ngspice from sources. |
|
|
will need bison and flex only. |
|
|
will need bison and flex only. |
|
|
|
|
|
|
|
|
If libfftw is detected on your system, it will be used instead of the |
|
|
If libfftw is detected on your system, it will be used instead of the |
|
|
internal fft procedure. |
|
|
|
|
|
|
|
|
internal fft algorithms. |
|
|
|
|
|
|
|
|
If you want to compile the source from the git repository you need |
|
|
If you want to compile the source from the git repository you need |
|
|
additional software: autoconf, automake, libtool. |
|
|
additional software: autoconf, automake, libtool. |
|
|
@ -75,14 +79,14 @@ This file describes the procedures to install ngspice from sources. |
|
|
For compiling ngspice as a shared library, see section 1.4. |
|
|
For compiling ngspice as a shared library, see section 1.4. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.2 Install from tarball (e.g. ngspice-35.tar.gz) |
|
|
|
|
|
|
|
|
1.2 Install from tarball (e.g. ngspice-36.tar.gz) |
|
|
|
|
|
|
|
|
This covers installation from a release distribution (for example |
|
|
This covers installation from a release distribution (for example |
|
|
ngspice-35.tar.gz, the so called tar ball). |
|
|
|
|
|
|
|
|
ngspice-36.tar.gz, the so called tar ball). |
|
|
|
|
|
|
|
|
After downloading the tar ball to a local directory unpack it using: |
|
|
After downloading the tar ball to a local directory unpack it using: |
|
|
|
|
|
|
|
|
$ tar -zxvf ngspice-35.tar.gz |
|
|
|
|
|
|
|
|
$ tar -zxvf ngspice-36.tar.gz |
|
|
|
|
|
|
|
|
Now change directories in to the top-level source directory (where this |
|
|
Now change directories in to the top-level source directory (where this |
|
|
INSTALL file can be found). |
|
|
INSTALL file can be found). |
|
|
@ -456,7 +460,7 @@ This file describes the procedures to install ngspice from sources. |
|
|
automake, libtool, FLEX and BISON, all available with pacman in MSYSS2). |
|
|
automake, libtool, FLEX and BISON, all available with pacman in MSYSS2). |
|
|
Some links are given below which describe the procedures. |
|
|
Some links are given below which describe the procedures. |
|
|
|
|
|
|
|
|
Installing from the tarball, e.g. ngspice-35.tar.gz, is simple: After |
|
|
|
|
|
|
|
|
Installing from the tarball, e.g. ngspice-36.tar.gz, is simple: After |
|
|
expanding, you may just run ./compile_min.sh from the ngspice directory. |
|
|
expanding, you may just run ./compile_min.sh from the ngspice directory. |
|
|
|
|
|
|
|
|
The default installation location of ngspice is the Windows path |
|
|
The default installation location of ngspice is the Windows path |
|
|
@ -680,7 +684,9 @@ cross-compile-shared.sh. |
|
|
|
|
|
|
|
|
10.1 Use precompiled binary package |
|
|
10.1 Use precompiled binary package |
|
|
1. Install an X11 interface (like Xquartz) |
|
|
1. Install an X11 interface (like Xquartz) |
|
|
2. Install the downloaded NGSPICE package |
|
|
|
|
|
|
|
|
2. Packages are available from Homebrew or MacPorts |
|
|
|
|
|
Install the downloaded NGSPICE package |
|
|
|
|
|
It may happen though that a package has been compiled without graphics support |
|
|
3. Open a terminal window and start using NGSPICE |
|
|
3. Open a terminal window and start using NGSPICE |
|
|
|
|
|
|
|
|
10.2 Compile NGSPICE manually from a tarball |
|
|
10.2 Compile NGSPICE manually from a tarball |
|
|
@ -701,7 +707,7 @@ cross-compile-shared.sh. |
|
|
2. Install MacPorts from http://www.macports.org |
|
|
2. Install MacPorts from http://www.macports.org |
|
|
3. Execute this command: |
|
|
3. Execute this command: |
|
|
sudo port install automake autoconf libtool bison flex ncurses xorg-libXaw |
|
|
sudo port install automake autoconf libtool bison flex ncurses xorg-libXaw |
|
|
readline fontconfig freetype libomp |
|
|
|
|
|
|
|
|
readline fontconfig freetype libomp SM ICE |
|
|
4. Execute this command: |
|
|
4. Execute this command: |
|
|
./autogen.sh or ./autogen.sh --adms (if you want to enable ADMS) |
|
|
./autogen.sh or ./autogen.sh --adms (if you want to enable ADMS) |
|
|
5. Configure NGSPICE invoking "./configure". A complete set of feature is: |
|
|
5. Configure NGSPICE invoking "./configure". A complete set of feature is: |
|
|
@ -711,5 +717,29 @@ cross-compile-shared.sh. |
|
|
6. Compile NGSPICE invoking "make -j4" |
|
|
6. Compile NGSPICE invoking "make -j4" |
|
|
7. Install NGSPICE invoking "make install" or "sudo make install" |
|
|
7. Install NGSPICE invoking "make install" or "sudo make install" |
|
|
|
|
|
|
|
|
A compile script compile_macos.sh contains all necessary steps. |
|
|
|
|
|
|
|
|
Resulting dependencies of ngspice |
|
|
|
|
|
/usr/local/opt/ncurses/lib/libncursesw.6.dylib |
|
|
|
|
|
/usr/local/opt/gcc/lib/gcc/11/libstdc++.6.dylib |
|
|
|
|
|
/usr/local/opt/fftw/lib/fftw3.3.dylib |
|
|
|
|
|
/usr/local/opt/readline/lib/libreadline.8.dylib |
|
|
|
|
|
/opt/local/lib/libXaw.7.dylib |
|
|
|
|
|
/opt/local/lib/libXmu.6.dylib |
|
|
|
|
|
/opt/local/lib/libXt.6.dylib |
|
|
|
|
|
/opt/local/lib/libXext.6.dylib |
|
|
|
|
|
/opt/local/lib/libX11.6.dylib |
|
|
|
|
|
/opt/local/lib/libfontconfig.1.dylib |
|
|
|
|
|
/opt/local/lib/libXrender.1.dylib |
|
|
|
|
|
/opt/local/lib/libfreetype.6.dylib |
|
|
|
|
|
/opt/local/lib/libSM.6.dylib |
|
|
|
|
|
/opt/local/lib/libICE.6.dylib |
|
|
|
|
|
/usr/local/opt/gcc/lib/gcc/11/libgomp.1.dylib |
|
|
|
|
|
/usr/lib/libSystem.B.dylib |
|
|
|
|
|
/usr/local/lib/gcc/11/libgcc_s.1.dylib |
|
|
|
|
|
|
|
|
|
|
|
10.5 About compilers |
|
|
|
|
|
A compile script compile_macos_clang.sh contains all necessary steps for compiling |
|
|
|
|
|
with the Xcode clang/llvm compiler. This compiler however does not support -fopenmp. |
|
|
|
|
|
Therefore you may download and install gcc, e.g. from Homebrew and run the new |
|
|
|
|
|
compile script compile_macos_gcc.sh. OpenMp enables parallel processing of |
|
|
|
|
|
BSIM3/4 model evaluation, thus speeding up simulation. |
|
|
|
|
|
|