Übrigens soll das Programm A überall laufen, auch wo keine
IDE installiert ist, d.h. es darf nicht eine eigene make.exe von freepascal/delphi/... brauchen.
Um diese Bedingung zu erfüllen müsste dein Programm A entweder Quelltext für eine interpretierte Sprache erzeugen (dann bräuchte das Programm B allerdings zur Laufzeit den ensprechenden Interpreter, um ausgeführt zu werden) oder du müsstest in Programm A einen vollwertigen Compiler einbauen.