Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Since SCons reads every file it will build, it has very detailed knowledge of the build structure. As a result, SCons can safely perform parallel builds and not violate any dependency issues. If you wish to tell SCons to do parallel builds you need to specify the -j option. The -j option is followed by a number to specify how many concurrent builds should be done. For example, -j 2 would tell SCons to perform execute 2 g++ commands at the same time.

SCons build output

When SCons is performing the build process it will put files in the following subdirectories that are located in the same directory as the SConstruct file:

  • Wiki Markup
    include/\[packageName\] - all the globally shared header files for \[packageName\]
  • Wiki Markup
    bin/\[variant\] - all the binaries for the variant. A variant specifies the OS and compile options such as debug or optimized.
  • Wiki Markup
    lib/\[variant\] - all the libraries for the variant. This variant string is the same as above
  • Wiki Markup
    pfiles/\[packageName\] - all the pfiles for \[packageName\]

Other such output directories will be created in the future and they will follow the same convention. If the contents of the directory is dependent on the OS or the compile options, it will include the variant sub directory. If it is independent of such changes it will not include that directory.