是否可以将一个exe文件作为一个lib文件链接到另一个项目?

时间:2018-06-28 11:30:23

标签: c++ visual-studio linker exe lib

问题在标题中。

我已经编码了一个.exe项目,我想在另一个项目中使用该项目的功能之一。

也许这是一个愚蠢的问题,但是如果有可能,这将限制我的解决方案中的项目数量...

我做了一个简单的尝试,出现LNK1107错误。

我会说这是不可能的,但是很难在网上找到明确的答案。

1 个答案:

答案 0 :(得分:3)

不,这不可能。

可执行文件是独立实体。这是将目标文件链接在一起以生成一个自包含的,很好的可执行文件的结果。

将两个可执行文件链接在一起,充其量只能产生main的重复定义(实际上,它有点复杂,但是……)。

您要做的是在对象文件成为可执行文件之前共享它们。通常,这是通过将共享/公共代码移至“库”中,然后将该库链接到两个项目中来完成的。

或者,您可以将可执行文件全部分开,但可以在版本控制级别共享代码,例如带有SVN外部接口。