Installation and Setup

System Requirements

To build run CScout your system must satisfy the following requirements:

Installation and Configuration

From this point onward we use the term Unix to refer to Unix-like systems like GNU/Linux and FreeBSD, and Windows to refer to Microsoft Windows systems.

You install CScout in five steps:

  1. Clone the source code from GitHub
  2. Enter the CScout directory with cd cscout
  3. Run make
  4. Run make test (optional, but highly recommended)
  5. Run sudo make install. If you want the installation to use a different directory hierarchy than the default /usr/local
  6. , you can specify this on the command line with the PREFIX variable. For example, you run make install PREFIX=/home/mydir to install CScout under your home directory or sudo make install PREFIX=/usr to install CScout under /usr.

By default the installation will create in /usr/local/include/cscout headers corresponding to a generic standard C compilation and to your host's specific configuration. If you want to process programs based on other host configurations you can modify these files or create a local version of the files in your home or the project's current directory.

In most cases you want CScout to process your code using the include files of the compiler you are normally using. This will allow CScout to handle programs using the libraries and facilities available in your environment (e.g. Unix system calls or the Windows API). In the other hand it exposes CScout to the extensions and quirks that might reside in your system's header files. You can typically reslove these problems by adding a few additional macro definitions that neutralize unknown compiler extensions. As an example, if your compiler supports a quad_double type and associated keyword with semantics roughly equivalent to double you would add a line in host-defs.h:

#define quad_double double
Have a look in the existing host-defs.h file to see what might be required. If your programs are written in standard C and do not use any additional include files, you can use the generic header files.