PBMake 2.16 for Clipper, Xbase++, C and ASM

Problems:

Some problems you might encounter...
******************************* Q and A ************************************
My old make engine doesn't work now.
My make script stops before it's finished.
PBMake can't find my include files.


Some problems you might encounter...


******************************* Q and A ************************************


My old make engine doesn't work now.

Q. Why did my old make engine stop working when I installed PBMake? A. It really didn't. PBMake can create a file named MAKE.BAT. If you mistakenly run PBMake in some directory in the path, then MAKE.BAT is also available via the path. If the directory where MAKE.BAT is earlier in the path than your old MAKE.EXE, MAKE.BAT will run. Solution: Go to each directory in your path, and delete MAKE.BAT if it exists. or Place the directory where your old make engine resides first in your path.

My make script stops before it's finished.

Q. My make script stops part way and doesn't complete. A. If any action in the make fails, PBMake intentionally stops. If you are compiling a module, and your compiler ends with an errorlevel higher than 0 when it quits, the make process stops. Compilers usually exit with an errorlevel of 0 if everything went OK. If you want Clipper to exit with an errorlevel when something goes wrong, you must add /ES2 to the FLAG= directive. (Clipper 5.0 or higher) A. There are 5 directives which will allow you to run an executable file: SUCCESS=, FAILURE=, NONEED=, PRECOMPILECMD= and PRELINKCMD=. If you use one of these to run a batch file, and you forget to use the dos CALL command which allows nested batch files, MAKE.BAT will lose scope and stop running. Solution: Check your link script for any of the above directives, and check to see if they are calling a batch file. If so, place the CALL directive in the directive before the batch file name. SUCCESS= GOODRUN.BAT Should be: SUCCESS= CALL GOODRUN.BAT

PBMake can't find my include files.

Q. PBMake says my INCLUDE= files don't exist. A. You must include the complete path if the include files you are referring to are not in the current directory. Include files are checked for existance, and PBMake stops if it cannot find them. Once you have determined that the paths are wrong in your .MAK file, (usually caused by taking code from one machine to another) you can simply run PBInit with the Update option and it will read in your .MAK file, check the paths, and correct any that are incorrect.