To create AppScan® Source project files successfully, you must run Ounce/Make in a suitable environment. The following list itemizes the requirements for Ounce/Make to run successfully. If you do not meet all of these requirements, Ounce/Make fails.

  • The directory from which Ounce/Make runs must contain a valid makefile.
  • The build environment must be able to issue a make command that will succeed.
  • Run the make clean command before running Ounce/Make. You can explicitly run make clean before running Ounce/Make or include it with Ounce/Make by specifying the - clean option.
  • Makefiles that Ounce/Make encounters cannot contain hardcoded absolute paths under the following circumstances:
    • To the make executable when calling another makefile:

      For example, do not reference the path /usr/bin/make -f In the makefile, reference make through the make executable or a variable. The variable may be the make macro, ${MAKE}, or another variable that you specify in the Properties file.

    • To the compiler executable when compiling source code:

      For example, /usr/bin/gcc -I.. -DFOO -o myfile.o myfile.cpp

    • To the linker executable when linking object files

      For example, /usr/bin/ld file1.o file2.o

  • In #include statements.

    To use a #include statement, add the following flag to the project file as an option of the configuration:

    --remote_root <remote dir>

    where <remote dir> defines the mount point of the remote directory.

    Note: You can only specify a single remote_root. All hard coded paths to #include statements must resolve to a single mount point.
  • Do not specify macros for the make, compiler, and linker executable on the command line when invoking make (for example, make CC=gcc LD=ld).