作者Aurim (Who cares?)
看板C_Sharp
标题Re: [转录][问题] Delphi如何编译.lib档?
时间Thu May 17 11:10:04 2007
※ 引述《Tsengkt (收心)》之铭言:
: 我手上有一份Delphi的source code、编译出来会是DLL档,
: 经理要求我编译成LIB档以供VC使用、网路上多半只看到如何将DLL转档成LIB,
: 经理说那样不是真的LIB档、只是提供了一个C与该DLL档间的一个接口,
: 换言之、那种方式还是需要将DLL与我们编译好的程式放一起才能执行…
: 现在我希望的是、用Delphi的source code直接编译出LIB档,
: 然後VC的程式编译完、执行时、可以不用放这个DLL档,
: 请问这样可以做得到吗?还是只能用转换的那种方式?
: 在此先行谢过了,m(__)m
你的经理在缘木求鱼,但是这鱼也不是真的不能在树上钓到。
如果你还是想把它编译成lib,有四条路:
1. 去Delphi的Project properties的Linker options指定你要Delphi编译出
.obj而不是.dcu-我已经忘记Borland的.obj格式能不能被VC的lib支援了,
也许你需要一些转换obj档格式的工具-即便如此,当你成功把.obj汇聚成
.lib後,你把它link进VC的程式时,linker可能会跟你说找不到一堆Delphi
执行期程式库才有的function;你可以想办法自行补完。
(问题在,你都还会来问这种问题了,我想你自己也补完不起来吧?)
2. 乖乖把Delphi source code改写成C吧...
3. 用Delphi.NET把那个Delphi source code编译成.NET的组件,
然後用反编译工具还原成C++ code,再自己改写用到Delphi执行期程式库里
东西的地方
(有用到指标的source code都不适用)
4. 去找GNU Pascal或Free Pascal来编译Delphi source code,如果有相容到,
就能生成.o或.a,然後我记得有办法可以转成VC可连结的.lib,不过要请你
自己google一番
基本上,没有可行的正攻法,全部都是旁门左道。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.221.35.208
1F:→ Tsengkt:谢谢 看来只能乖乖地苦干实干啦 :) 05/18 16:02