Building
Compiling
Starting in version 1.3 the build is based on cmake with an experimental
configure
wrapper script.
So in case you have cmake installed, you can either run cmake
as usual or
for convenience you can just run
./configure
make
The configure script provides command line options for typical scenarios (e.g. explicitly selecting the simulator to use), but the existing cmake files should also autodetect a supported available Verilog simulator otherwise.
For compiling in a project (depending on the simulator) you need to build a VPI library
containing the stimc/stimc++ code (if you do not want a separated library)
or linking against stimc as a shared library,
and the module export code created with the STIMCXX_EXPORT (<module-name>)
macro.
The VPI library, if compiled with stimc, or the linked stimc library depends on a coroutine
library. Since version 1.3 the default is a local copy of libco from the higan-emu project.
Alternatively it is possible to use an existing local coroutine library.
Options are libco
, pcl
(portable coroutine library), boost/coroutine2
and boost/coroutine
.
Installation
There is no need to install stimc, as you can just compile the sources together with your own code into a VPI shared library for the simulator to load. But it is also possible to compile it into a standalone shared library and link the VPI library against it. This can be achieved via running
./configure
make
make install
and can be controlled by command line options of the configure
script
(run ./configure --help
for available options).
In case of a local installation make sure the VPI library can find the stimc library
by using appropriate environment variables or linker settings (e.g. -Wl,rpath,
).