2017-04-20 91 views
2

我的Visual Studio解决方案包含以下项目:的Visual Studio C++解汇编

Solution 
-> FolderName 
     C++ Project Name 1 
     C++ Project Name 2 
-> C++ Project Name 3 
-> C# Project Name 

C++ Project Name 3是一个库类型的项目(生成一个DLL和一个lib)

C++ Project Name 1 and 2使用的报头从C++ Project Name 3和在他们期望为链接器部分生成的库文件C++ Project Name 3

如果在项目顺序(3,1,2)中逐个编译,所有的东西都编译正确并且工作正常,但是我如果我尝试编译整个解决方案,我得到一个链接器错误,指出它无法编译C++ project Name 1,因为它无法从C++ Project Name 3找到该库。

我的问题是我如何正确编译(按预期顺序)如果我选择编译解决方案?下一步我要做的就是使用TFS编译系统进行编译,我期望在那里我会遇到同样的问题

+0

项目 - >项目建立顺序...?或者可能将'C++ Project Name 3'设置为'C++ Project Name 1'的项目依赖项? – UnholySheep

+0

嗨,你有没有尝试将项目3设置为项目1和项目2的依赖项? – Felipe

回答

4

在Visual Studio中,转到Project菜单,然后Project Dependencies。选择“需要”库的项目,并检查库的复选框。这将告诉Visual Studio如何确定顺序或编译。

注意:您也可以手动更改构建顺序,但通过设置依赖关系,Visual Studio可以处理自己的顺序,这可能会更优化。

MSDN: How to: Create and Remove Project Dependencies