相关疑难解决方法(0)

在 Windows MSVC 上,是否可以将一些 .obj 合并为一个 .obj?如果是,我该怎么做?

例如,a.obj b.obj c.obj刚刚用 编译出三个目标文件cl,希望将它们合并为一个combined.obj

SO 问题的评论指出,在 *nix 上可以使用ld. 然而,cl所有link似乎都只支持.exe,.dll.lib作为输出。


我想要对组合目标文件执行的整个过程如下:

  1. a.obj b.obj c.obj -> combined.obj
  2. combined.obj d.obj e.obj -> executable.exe

我的问题解决了。 a.obj b.obj c.obj使用一些尚未链接的变量和函数,我认为.lib因为它是一个库,所以不能容忍缺少函数,但实际上这是可以的。我可以将它们合并到一个.lib文件中:

lib *.obj /OUT:combined.lib
Run Code Online (Sandbox Code Playgroud)

c windows linker visual-c++

5
推荐指数
1
解决办法
1055
查看次数

标签 统计

c ×1

linker ×1

visual-c++ ×1

windows ×1