问题描述
例如,有三个目标文件a.obj b.obj c.obj
刚刚用cl
编译出来,希望将它们组合成一个combined.obj
。
关于SO问题的评论指出,在* nix上可以用ld
做这种事情。但是,cl
和link
似乎都只支持.exe
,.dll
和.lib
作为输出。
我要对组合目标文件执行的整个过程如下:
-
a.obj b.obj c.obj
->
combined.obj
-
combined.obj d.obj e.obj
->
executable.exe
我的问题已解决。 a.obj b.obj c.obj
使用了一些尚未链接的变量和函数,并且我认为.lib
不能容忍缺少的函数,因为它是一个库,但实际上还可以。我可以将它们合并成一个.lib
文件:
lib *.obj /OUT:combined.lib
解决方法
好像不是,但是把它们合并成一个.lib
很方便:
lib *.obj /OUT:combined.lib