delphi 连接 c++ builder 32 生成obj文件

delphi 可以连接c++ builder 生成OMF格式的obj文件,会报一个错。[DCC Error] E2065 Unsatisfied forward or external declaration: 'xXXX'

函数名没有找到,在头文件里加一个未公开的参数 #pragma option push -V?- 解决问题。

主意函数名,有可能会有“_”下划线

bcc32才需要这样 64 不需要

-S 大写 输出汇编文件

--target= 参数无效 。。??哎,

x86_64-pc-windows-elf x86_64-pc-win32-elf x86_64-pc-win64-elf

https://bbs.csdn.net/topics/392493840

还没有发现CB的连接器有类似ms link的/entry修改入口点功能,感觉这功能没啥用,非要的话,可以用宏实现:

程序中不要有名叫main的函数即可

替换默认stub,没有直接的命令行参数,但是可以写个def文件,比如叫test.def:

内容:

stub 'xxx'

然后命令行编译:

bcc32 xxx.cpp -l test.def

64位:

bcc64 xxx.cpp -Wl,test.def

def文件可以设置很多生成参数,具体见:http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Module_Definition_Files

cpp64 main.c -S http://docwiki.embarcadero.com/RADStudio/Tokyo/en/CPP64,_the_Preprocessor_for_64-bit_Windows