静态库依赖+ VS2010 + SVN

时间:2012-11-29 10:38:02

标签: c++ visual-studio-2010 visualsvn

这是对使用SVN的Visual Studio中的解决方案组织的疑问。

为了简化,我们假设我有一个名为Util.lib的静态库,在VS2010项目中编译。

我还有一个名为Capture.lib的静态库,在VS2010中编译,依赖于Util.lib。 在SVN上,Util.lib是Capture.lib文件夹中的外部,Util项目已添加到Capture.lib解决方案中。 这完全可以编译。

现在问题。我有另一个名为Native的项目,它编译DLL。 此DLL依赖于Capture.lib和Util.lib。 我已将两者都添加为外部,并将项目添加到Native解决方案。

问题是:在编译Native期间,Capture.lib项目无法编译,因为它找不到Util.lib。 发生这种情况是因为它在Capture项目的externals文件夹中查找! Util现在还不存在。

在这种情况下我该怎么办?我应该将Util项目(在externals / Capture / externals / Util内部)添加到Native 解?这是正确的方法吗?

由于

1 个答案:

答案 0 :(得分:-1)

这取决于Util.lib和Capture.lib的更改频率。 1)如果您使用Native.dll的固定版本,您只需要添加 Util.lib和Capture.lib及其头文件夹到Native项目 (项目 - >属性 - > C / C ++ - >其他包含目录,项目 - >属性 - >链接器 - >输入 - >其他依赖项) 2)如果Capture.lib和Native.dll与Native.dll并行改变, 你应该以与(1)相同的方式调整依赖关系,并将项目依赖关系添加到Capture.lib和Native.dll(Project-> Project Dependencies),你可以告诉VS以正确的顺序编译你的项目。