Browse Source

Updated installation instruction.

pre-master-46
pnenzi 18 years ago
parent
commit
957f814119
  1. 699
      INSTALL

699
INSTALL

@ -1,458 +1,505 @@
Install from CVS
================
Ngspice installation instructions
=================================
This section describes how to install from source code taken direct
from CVS. It is intended more for developers than for users as the code
in CVS may be unstable. For user install instructions using source from
released distributions, please see the sections titled 'Basic Install'
and 'Advanced Install'.
Table of contents
Download source from CVS as described on the sourceforge project page
(see http://sourceforge.net/projects/ngspice/ and click on the CVS link)
1 Ngspice installation
1.1 Prerequisites
1.2 Install from CVS
1.3 Basic Install
1.4 Advanced Install
1.4.1 Options Specific to Using Ngspice
1.4.2 Options Useful for Debugging Ngspice
2 Compilers and Options
3 Compiling For Multiple Architectures
4 Installation Names
5 Optional Features
6 Specifying the System Type
7 Sharing Defaults
8 Operation Controls
9 NGSPICE COMPILATION UNDER WINDOWS OS
9.1 make ngspice with CYGWIN and external MINGW32
9.2 make ngspice with CYGWIN and internal MINGW32 (use config.h made above)
9.3 make ngspice with pure CYGWIN
9.4 How to make ngspice with MINGW and MSYS
Now change directories in to the top-level source directory (where this
INSTALL file can be found).
The project uses the GNU build process. This is still very crude and needs
work, but basically you should be able to do the following:
This file describes the procedures to install ngspice from sources.
$ ./autogen.sh
$ ./configure --enable-maintainer-mode
$ make
$ sudo make install
At present it is normal for there to be some warning generated during this
process.
1 Ngspice Installation
====================
See the section titled 'Advanced Install' for instructions about arguments
that can be passed to ./configure to customise the build and installation.
1.1 Prerequisites
If a problem is found with the build proccess, please submit a report to
the NGSpice development team. Please provide information about you system
and any ./configure arguments you are using, together with any error
messages. Ideally you would have tried to fix the problem yourself first,
and details about this and any thought you may has as to the cause of the
problem should also be provided. If you have fixed the problem then the
development team will love to hear from you.
Ngspice is written in C and thus a complete C compilation environment is
needed. Almost any UNIX comes with a complete C development environment.
Ngspice is developed on GNU/Linux with gcc and GNU make.
The following software must be installed in your system to compile ngspice:
bison, flex and X11.
Basic Installation
==================
If you want to compile the CVS source you need additional software:
autoconf, automake, libtool, texinfo.
This covers installation from a tar-ball (for example ngspice-rework-15.tgz).
The following software may be needed when enabling additional features:
editline, tcl/tk
After downloading the tar ball to a local directory unpack it using:
1.2 Install from CVS
$ tar -zxvf ngspice-rework-15.tgz
This section describes how to install from source code taken direct
from CVS. It is intended more for developers than for users as the code
in CVS may be unstable. For user install instructions using source from
released distributions, please see the sections titled 'Basic Install'
and 'Advanced Install'.
Now change directories in to the top-level source directory (where this
INSTALL file can be found).
Download source from CVS as described on the sourceforge project page
(see http://sourceforge.net/projects/ngspice/ and click on the CVS link)
You should be able to do:
Now change directories in to the top-level source directory (where this
INSTALL file can be found).
$ ./configure
$ make
$ sudo make install
The project uses the GNU build process. This is still very crude and needs
work, but basically you should be able to do the following:
The default install dir is /usr/local/bin
$ ./autogen.sh
$ ./configure --enable-maintainer-mode
$ make
$ sudo make install
See the section titled 'Advanced Install' for instructions about arguments
that can be passed to ./configure to customise the build and installation.
At present it is normal for there to be some warning generated during this
process.
Advanced Install
================
See the section titled 'Advanced Install' for instructions about arguments
that can be passed to ./configure to customise the build and installation.
Some extra options can be provided to './configure'. To get all available
options do:
If a problem is found with the build proccess, please submit a report to
the Ngspice development team. Please provide information about your system
and any ./configure arguments you are using, together with any error
messages. Ideally you would have tried to fix the problem yourself first.
If you have fixed the problem then the development team will love to hear
from you.
$ ./configure --help
1.3 Basic Install
Some of these options are generic to the GNU build process that is used by
NGSpice, other are specific to NGSpice.
This covers installation from a tarball (for example ngspice-rework-18.tgz).
After downloading the tar ball to a local directory unpack it using:
The following sections provide some guidance and descriptions for many,
but not all, of these options.
$ tar -zxvf ngspice-rework-18.tgz
Now change directories in to the top-level source directory (where this
INSTALL file can be found).
Options Specific to Using NGSpice
=================================
You should be able to do:
--enable-experimental
This enables some experimental code. Specifically it enables:
* support for altering options in interactive mode
by adding the interactive keyword 'options'
* The ability to save and load snapshots: adds
interactive keywords 'savesnap' and 'loadsnap'
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
--enable-nosqrt
Use always log/exp for non-linear capacitances
The default install dir is /usr/local/bin
--enable-nobypass
Don't bypass recalculations of slowly changing variables
See the section titled 'Advanced Install' for instructions about arguments
that can be passed to ./configure to customise the build and installation.
--enable-capbypass
Bypass calculation of cbd/cbs in the mosfets if the vbs/vbd
voltages are unchanged
--enable-capzerobypass
Bypass all the cbd/cbs calculations if Czero is zero
1.4 Advanced Install
--enable-nodelimiting
Experimental damping scheme
Some extra options can be provided to './configure'. To get all available
options do:
--enable-predictor
Enable a predictor method for convergence
$ ./configure --help
--enable-newtrunc
Enable the newtrunc option
Some of these options are generic to the GNU build process that is used by
Ngspice, other are specific to Ngspice.
--enable-sense2
Use spice2 sensitivity analysis
The following sections provide some guidance and descriptions for many,
but not all, of these options.
--enable-intnoise
Enable noise integration in noise analysis
--enable-ekv
Enable ekv model support.
The source code for the this must be obtained from EKV web
site (see DEVICE for more info). To enable EKV support you
have to obtain the code first and then use this configure
switch.
1.4.1 Options Specific to Using Ngspice
--enable-xspice
Enable XSpice enhancements, (experimental)
A mixed signal simulator built upon spice3 with codemodel
dynamic loading support. See src/xspice/README for details
--enable-adms
ADMS is an experimental model compiler that translates
Verilog-A compact models into C code that can be compiled into
ngspice. This is (as of rework.18 )still experimental and not
completely working. If you want to use it, please refer to the
ADMS section on ngspice web site.
--enable-cider
Enable CIDER enhancements, (experimental)
A mixed level simulator built upon spice3.
--enable-capbypass
Bypass calculation of cbd/cbs in the mosfets if the vbs/vbd
voltages are unchanged.
--enable-ndev
--enable-capzerobypass
Bypass all the cbd/cbs calculations if Czero is zero. This is
enabled by default since rework-18.
--enable-cider
Cider is a mixed-level simulator that couples Spice3 and DSIM
to simulate devices from their technological parameters. This
part of the simulator is not compiled by default.
--enable-cluster
Clustering code for distributed simulation. This is a
contribution never tested. This code comes from TCLspice
implementation and is implemented for transient analysis only.
--enable-expdevices
Enable experimental devices. This option is used by developers
to mask devices under development. Almost useless for users.
--enable-experimental
This enables some experimental code. Specifically it enables:
* support for altering options in interactive mode
by adding the interactive keyword 'options'.
* The ability to save and load snapshots: adds
interactive keywords 'savesnap' and 'loadsnap'.
--enable-help
Force building nghelp. This is deprecated.
--enable-ndev
Enable NDEV interface, (experimental) Enable NDEV interface, (experimental)
A TCP/IP interface to external device simulator such as GSS. A TCP/IP interface to external device simulator such as GSS.
For more information, please visit the homepage of GSS at For more information, please visit the homepage of GSS at
http://gss-tcad.sourceforge.net http://gss-tcad.sourceforge.net
--enable-cluster
Enable cluster support, (experimental)
--enable-newpred
Enable the NEWPRED symbol in the code.
--enable-newtrunc
Enable the newtrunc option
--enable-nodelimiting
Experimental damping scheme
--enable-nobypass
Don't bypass recalculations of slowly changing variables
--enable-nosqrt
Use always log/exp for non-linear capacitances
--enable-predictor
Enable a predictor method for convergence
--enable-numparam
Enable numparams library support, (experimental)
A library that allows for parameter substitution at netlist
level.
--enable-sense2
Use spice2 sensitivity analysis
--enable-xgraph
--enable-xgraph
Compile the Xgraph plotting program. Compile the Xgraph plotting program.
Xgraph is a plotting package for X11 and was once very popular. Xgraph is a plotting package for X11 and was once very popular.
--enable-dot-global
Allows the use of the .global keyword.
--with-readline=yes
Enable GNU readline support for the command line interface.
This requires linking against the GNU readline library and
is discouraged.
--enable-xspice
Enable XSpice enhancements, (experimental)
A mixed signal simulator built upon spice3 with codemodel
dynamic loading support. See src/xspice/README for details.
--with-editline=yes
--with-editline=yes
Enables the use of the BSD editline library (libedit). Enables the use of the BSD editline library (libedit).
See http://www.thrysoee.dk/editline/ See http://www.thrysoee.dk/editline/
This is preferred over GNU readline due to licensing issues. This is preferred over GNU readline due to licensing issues.
--with-readline=yes
Enable GNU readline support for the command line interface.
This requires linking against the GNU readline library and
is discouraged.
Options Useful for Debugging NGSpice
====================================
--with-tcl=tcldir
When configured with this option the tcl module
"tclspice" is compiled and installed instead of
plain ngspice.
--disable-debug
This option will remove the '-g' option passed to the compiler.
This speeds up compilation a *lot*, and is recommended for
normal use.
--enable-ansi
1.4.2 Options Useful for Debugging Ngspice
--enable-ansi
Configure will try to find an option for your compiler so that Configure will try to find an option for your compiler so that
it expects ansi-C
it expects ansi-C.
--enable-checkergcc
Option for compilation with checkergcc
--enable-asdebug
Debug sensitivity code *ASDEBUG*.
--enable-gc
Enable the Boehm-Weiser Conservative Garbage Collector
--enable-blktmsdebug
Debug distortion code *BLOCKTIMES*
--enable-ftedebug
Enable ngspice frontend debug
--enable-checkergcc
Option for compilation with checkergcc.
--enable-sensdebug
--enable-asdebug
Debug sensitivity code
--enable-cpdebug
Enable ngspice shell code debug.
--disable-debug
This option will remove the '-g' option passed to the compiler.
This speeds up compilation a *lot*, and is recommended for
normal use.
--enable-cpdebug
Enable ngspice shell debug
--enable-ftedebug
Enable ngspice frontend debug.
--enable-stepdebug
Turns on debugging of convergence stepping??
--enable-gc
Enable the Boehm-Weiser Conservative Garbage Collector.
--enable-pzdebug
Debug pole/zero code
--enable-pzdebug
Debug pole/zero code.
--enable-blktmsdebug
--enable-smltmsdebug
Debug distortion code
--enable-sensdebug
Debug sensitivity code *SENSDEBUG*.
--enable-smoketest
Enable smoketest compile
--enable-smltmsdebug
Debug distortion code *SMALLTIMES*
--enable-expdevices
Enable experimental devices (may not compile)
--enable-smoketest
Enable smoketest compile.
--enable-stepdebug
Turns on debugging of convergence stepping??
Compilers and Options
=====================
Some systems require unusual options for compilation or linking that
the `configure' script does not know about. You can give `configure'
initial values for variables by setting them in the environment. Using
a Bourne-compatible shell, you can do that on the command line like
this:
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
2 Compilers and Options
=====================
Or on systems that have the `env' program, you can do it like this:
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
Some systems require unusual options for compilation or linking that
the `configure' script does not know about. You can give `configure'
initial values for variables by setting them in the environment. Using
a Bourne-compatible shell, you can do that on the command line like
this:
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
Compiling For Multiple Architectures
====================================
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
own directory. To do this, you must use a version of `make' that
supports the `VPATH' variable, such as GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'.
If you have to use a `make' that does not supports the `VPATH'
variable, you have to compile the package for one architecture at a time
in the source code directory. After you have installed the package for
one architecture, use `make distclean' before reconfiguring for another
architecture.
Installation Names
==================
By default, `make install' will install the package's files in
`/usr/local/bin', `/usr/local/man', etc. You can specify an
installation prefix other than `/usr/local' by giving `configure' the
option `--prefix=PATH'.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
give `configure' the option `--exec-prefix=PATH', the package will use
PATH as the prefix for installing programs and libraries.
Documentation and other data files will still use the regular prefix.
Or on systems that have the `env' program, you can do it like this:
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
In addition, if you use an unusual directory layout you can give
options like `--bindir=PATH' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them.
3 Compiling For Multiple Architectures
====================================
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
own directory. To do this, you must use a version of `make' that
supports the `VPATH' variable, such as GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'.
If you have to use a `make' that does not supports the `VPATH'
variable, you have to compile the package for one architecture at a time
in the source code directory. After you have installed the package for
one architecture, use `make distclean' before reconfiguring for another
architecture.
4 Installation Names
==================
By default, `make install' will install the package's files in
`/usr/local/bin', `/usr/local/man', etc. You can specify an
installation prefix other than `/usr/local' by giving `configure' the
option `--prefix=PATH'.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
give `configure' the option `--exec-prefix=PATH', the package will use
PATH as the prefix for installing programs and libraries.
Documentation and other data files will still use the regular prefix.
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
In addition, if you use an unusual directory layout you can give
options like `--bindir=PATH' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them.
When installed on MinGW with MSYS alternative paths are not fully supported.
See 'How to make ngspice with MINGW and MSYS' below for details.
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
When installed on MinGW with MSYS alternative paths are not fully supported.
See 'How to make ngspice with MINGW and MSYS' below for details.
Optional Features
=================
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
`README' should mention any `--enable-' and `--with-' options that the
package recognizes.
5 Optional Features
=================
For packages that use the X Window System, `configure' can usually
find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
`README' should mention any `--enable-' and `--with-' options that the
package recognizes.
Specifying the System Type
==========================
For packages that use the X Window System, `configure' can usually
find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
There may be some features `configure' can not figure out
automatically, but needs to determine by the type of host the package
will run on. Usually `configure' can figure that out, but if it prints
a message saying it can not guess the host type, give it the
`--host=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name with three fields:
CPU-COMPANY-SYSTEM
6 Specifying the System Type
==========================
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the host type.
There may be some features `configure' can not figure out
automatically, but needs to determine by the type of host the package
will run on. Usually `configure' can figure that out, but if it prints
a message saying it can not guess the host type, give it the
`--host=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name with three fields:
CPU-COMPANY-SYSTEM
If you are building compiler tools for cross-compiling, you can also
use the `--target=TYPE' option to select the type of system they will
produce code for and the `--build=TYPE' option to select the type of
system on which you are compiling the package.
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the host type.
Sharing Defaults
================
If you are building compiler tools for cross-compiling, you can also
use the `--target=TYPE' option to select the type of system they will
produce code for and the `--build=TYPE' option to select the type of
system on which you are compiling the package.
If you want to set default values for `configure' scripts to share,
you can create a site shell script called `config.site' that gives
default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script.
7 Sharing Defaults
================
Operation Controls
==================
If you want to set default values for `configure' scripts to share,
you can create a site shell script called `config.site' that gives
default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script.
`configure' recognizes the following options to control how it
operates.
8 Operation Controls
==================
`--cache-file=FILE'
Use and save the results of the tests in FILE instead of
`./config.cache'. Set FILE to `/dev/null' to disable caching, for
debugging `configure'.
`configure' recognizes the following options to control how it
operates.
`--help'
Print a summary of the options to `configure', and exit.
`--cache-file=FILE'
Use and save the results of the tests in FILE instead of
`./config.cache'. Set FILE to `/dev/null' to disable caching, for
debugging `configure'.
`--quiet'
`--silent'
`-q'
Do not print messages saying which checks are being made. To
suppress all normal output, redirect it to `/dev/null' (any error
messages will still be shown).
`--help'
Print a summary of the options to `configure', and exit.
`--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
`--quiet'
`--silent'
`-q'
Do not print messages saying which checks are being made. To
suppress all normal output, redirect it to `/dev/null' (any error
messages will still be shown).
`--version'
Print the version of Autoconf used to generate the `configure'
script, and exit.
`--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
`configure' also accepts some other, not widely useful, options.
`--version'
Print the version of Autoconf used to generate the `configure'
script, and exit.
`configure' also accepts some other, not widely useful, options.
NGSPICE COMPILATION UNDER WINDOWS OS
====================================
9 NGSPICE COMPILATION UNDER WINDOWS OS
====================================
make ngspice with CYGWIN and external MINGW32
according to http://www.geocrawler.com/lists/3/SourceForge/6013/0/7321042/
9.1 make ngspice with CYGWIN and external MINGW32
according to http://www.geocrawler.com/lists/3/SourceForge/6013/0/7321042/
$ cd ng-spice-rework-14
$ export PATH="/cygdrive/g/gcc_mingw/bin:$PATH"
$ autoconf
$ rm config.cache
$ ./configure --with-windows --prefix="/cygdrive/g/gcc_mingw/bin"
$ make clean
$ make 2> make.err
$ cp config.h config_ming.h
$ cd ng-spice-rework-18
$ export PATH="/cygdrive/g/gcc_mingw/bin:$PATH"
$ autoconf
$ rm config.cache
$ ./configure --with-windows --prefix="/cygdrive/g/gcc_mingw/bin"
$ make clean
$ make 2> make.err
ngspice.exe is o.k.,but make tests does not work (cannot direct console
output into file). Needs to add .save "what" "where.test" to every input
(*.cir) file. Also all given output files have to be adapted to WINDOWS (CR/LF
instead of only LF at each line ending) for allowing proper comparison.
$ cp config.h config_ming.h
ngspice.exe is o.k.,but make tests does not work (cannot direct console
output into file). Needs to add .save "what" "where.test" to every input
(*.cir) file. Also all given output files have to be adapted to WINDOWS
(CR/LF instead of only LF at each line ending) for allowing proper comparison.
make ngspice with CYGWIN and internal MINGW32 (use config.h made above)
-----------------------------------------------------------------------
9.2 make ngspice with CYGWIN and internal MINGW32 (use config.h made above)
$ cd ng-spice-rework-14
$ rm config.cache
$ export CFLAGS="-mno-cygwin -g -O2"
$ export LDFLAGS="-L/lib/mingw"
$ export CPPFLAGS="-I/usr/include/mingw"
$ ./configure --with-windows
$ cp config_ming.h config.h
$ make clean
$ make 2> make.err
$ cd ng-spice-rework-18
$ rm config.cache
$ export CFLAGS="-mno-cygwin -g -O2"
$ export LDFLAGS="-L/lib/mingw"
$ export CPPFLAGS="-I/usr/include/mingw"
$ ./configure --with-windows
$ cp config_ming.h config.h
$ make clean
$ make 2> make.err
./configure does not work correctly: It finds headers and libs which are not
really available in the -mno-cygwin port of MINGW32. Therefore config.h is
not o.k.
./configure does not work correctly: It finds headers and libs which are not
really available in the -mno-cygwin port of MINGW32. Therefore config.h is
not o.k.
ToDo: find appropriate presets for variables ?
rewrite tests for headers and libs (search exclusively in mingw
directories)
ToDo: find appropriate presets for variables ?
rewrite tests for headers and libs (search exclusively in mingw
directories)
make ngspice with pure CYGWIN
-----------------------------
9.3 make ngspice with pure CYGWIN
If you don't have libdl.a you may need to link libcygwin.a
to libdl.a symbolically.
If you don't have libdl.a you may need to link libcygwin.a
to libdl.a symbolically.
for example:
for example:
$ cd /lib
$ ln -s libcygwin.a libdl.a.
$ cd /lib
$ ln -s libcygwin.a libdl.a.
The procedure of compiling is the same as Linux.
The procedure of compiling is the same as Linux.
How to make ngspice with MINGW and MSYS
---------------------------------------
9.4 How to make ngspice with MINGW and MSYS
The default installation location is the Windows path C:\msys\1.0\local
Normally the install path can be altered by passing --prefix=NEWPATH as an
argument to ./configure during the build process but when using MinGW and MSYS
this process is not fully supported.
The default installation location is the Windows path C:\msys\1.0\local
Normally the install path can be altered by passing --prefix=NEWPATH as an
argument to ./configure during the build process but when using MinGW and MSYS
this process is not fully supported.
If you do need to change the install path then you first need to modify the
following lines in src/conf.h.
If you do need to change the install path then you first need to modify the
following lines in src/conf.h.
#ifdef __MINGW32__
#define NGSPICEBINDIR "C:\\msys\\1.0\\local\\bin"
#define NGSPICEDATADIR "C:\\msys\\1.0\\local\\share\\ng-spice-rework"
#endif
#ifdef __MINGW32__
#define NGSPICEBINDIR "C:\\msys\\1.0\\local\\bin"
#define NGSPICEDATADIR "C:\\msys\\1.0\\local\\share\\ng-spice-rework"
#endif
Put the install path you desire inside "", and then use the unix-style
equivalent with --prefix=NEWPATH as an argument to ./configure in the normal way.
Put the install path you desire inside "", and then use the unix-style
equivalent with --prefix=NEWPATH as an argument to ./configure in the
normal way.
Next, the line feed code in src/ngspice.txt must be changed from LF to CR/LF.
Next, the line feed code in src/ngspice.txt must be changed from LF to CR/LF.
The procedure of compiling a distribution (for example, a tarball from the
ngspice website), is as follows:
The procedure of compiling a distribution (for example, a tarball from the
ngspice website), is as follows:
$ cd ng-spice-rework-17
$ ./configure --with-windows ...and other options
$ make
$ make install
$ cd ng-spice-rework-18
$ ./configure --with-windows ...and other options
$ make
$ make install
However, to compile code extracted from the CVS repository the procedure is
a little different, thus:
However, to compile code extracted from the CVS repository the procedure is
a little different, thus:
$ cd ng-spice-rework-17
$ ./autogen.sh
$ ./configure --enable-maintainer-mode --with-windows ...and other options
$ make
$ make install
$ cd ng-spice-rework-18
$ ./autogen.sh
$ ./configure --enable-maintainer-mode --with-windows ...and other options
$ make
$ make install
Finally, if you use xspice (ie. if to ran ./configure with --enable-xspice)
then the directory of each "code model" referenced in the "spinit" file must
be modified from UNIX form to DOS form.
Finally, if you use xspice (ie. if to ran ./configure with --enable-
xspice) then the directory of each "code model" referenced in the "spinit"
file must be modified from UNIX form to DOS form.
For example:
Change
codemodel /msys/1.0/local/lib/spice/spice2poly.cm
to
codemodel C:\msys\1.0\local\lib\spice\spice2poly.cm
For example:
Change
codemodel /msys/1.0/local/lib/spice/spice2poly.cm
to
codemodel C:\msys\1.0\local\lib\spice\spice2poly.cm
The "spinit" file is in C:\msys\1.0\local\share\ng-spice-rework
if you did the same setting as the above.
The "spinit" file is in C:\msys\1.0\local\share\ng-spice-rework
if you did the same setting as the above.
MINGW and MSYS can be downloaded from http://www.mingw.org/.
MINGW and MSYS can be downloaded from http://www.mingw.org/.
Loading…
Cancel
Save