Primary development of ACT is conducted on Linux and MacOS, and so it has been extensively tested on such systems. It has also been tested in certain Windows environments (see below).
If you are a Homebrew user, check out the homebrew tap for the tools.
The core library is available from Github.
Note: This only installs the core circuit design tools. For those interested in the full flow, please use the actflow repo. The flow repository includes the core ACT repository, and includes many additional tools including actsim, interact, chp2prs, and dflowmap (to name a few).
Before starting, please make sure that your system satisfies the following requirements:
yum package manager, the package is called libedit-develapt-get, it is libeditline-dev or libedit-devlibedit, not libeditline.zlib installedm4 installedOn MacOS, these packages can be installed using the homebrew package manager.
Create a directory where you'd like the tools to be installed. Example common locations include /usr/local/cad, /opt/cad, /opt/async. Once you've cloned the git repo:
ACT_HOME to point to the install directory.VLSI_TOOLS_SRC to the root of the source tree (i.e. the /path/to/act).$VLSI_TOOLS_SRC directory, run ./configure $ACT_HOME./build
If there is an issue building the software and you want to do a clean build, use make realclean before re-running the build instructions above.
Once you've built the tools, run make install to install the files, and make runtest to run through a set of test cases.
Note that the environment variable ACT_HOME has to be set to run the ACT tools, so it is best to set it in your .bashrc or the appropriate initialization script read in by your default shell.
Optional: to add the tools to your path add export PATH=$ACT_HOME/bin:$PATH to your .bashrc too
The actflow troubleshooting section may be helpful.
Recent versions of Windows include compatibility layers for Unix, and ACT has been successfully tested in such an environment.
Some instructions for running ACT tools on Microsoft Windows
ACT files are typically short since they are written by a designer. However, an ACT file generated by another program—especially if the program generates a flattened design—can be large. If an ACT process (or a namespace) has a very large number of instances/connections that are individually listed (i.e. in the input file) and the library crashes, try removing system limits on the stack size (using unlimit or ulimit depending on your shell) and re-running the program.
NOTE: This issue has been fixed as of 7/10/2023.
Some of the library functionality can be linked into Synopsys vcs for co-simulation support. This requires some Synopsys header files (obviously not included in the ACT distribution).