我喜欢我的库兼作可执行文件。期望的行为是:
$ ./scriptedmain
Main: The meaning of life is: 42
$ ./test
Test: The meaning of life is: 42
我怎样才能:
- 编译
scriptedmain.p成scriptedmain二进制文件? - 阻止
test.p运行/部分中scriptedmain.p的代码?beginend
脚本main.p:
unit ScriptedMain;
interface
function MeaningOfLife () : integer;
implementation
function MeaningOfLife () : integer;
begin
MeaningOfLife := 42
end;
begin
write('Main: The meaning of life is: ');
writeln(MeaningOfLife())
end.
当我用 编译 scriptedmain.p 时fpc scriptedmain.p,没有创建可执行文件,因为 Pascal 检测到它是一个单元。但我希望它是除了库之外的可执行文件。
$ ./scriptedmain
-bash: ./scriptedmain: No such file or directory
测试.p:
program Test;
uses
ScriptedMain;
begin
write('Test: The meaning of life is: ');
writeln(MeaningOfLife())
end.
当我用 编译 test.p 时fpc test.p,生成的可执行文件结合了两个begin/end声明(不是所需的行为)。
$ ./test
Main: The meaning of life is: 42
Test: The meaning of life is: 42