2011-11-29 32 views
1

在Visual Studio 2010中,如何设置我的VC++导入目录,以便可以从多台计算机构建项目?例如,我的项目需要使用安装在我正在使用的两台机器上但位于不同路径上的图形库。当从多台计算机上工作时,在VC++中包含目录

我想答案是某种宏,但我是新来的Visual Studio,所以我不知道我的直觉是否正确。

我正在从Matlab环境转换,您可以在其中直接设置每台机器的路径,而不是每个项目。 Visual Studio是否具有此类功能,或者是项目属性级别的所有功能?

+0

'SUBST X:C:\路径\上\本地\ machine'? – MSalters

回答

2

确实可以使用宏来设置您的include和lib目录在每台计算机的基础上。

,如果你在你的项目目录中的文件,您可以使用:

$(SolutionDir)\这将指向您的解决方案根目录

$(ProjectDir)\的完整路径,这将指向你的项目目录的完整路径根。

您可以将图形库在你的项目目录,并指向它喜欢:

$(ProjectDir)\graphicslib,例如,或者您希望把它放在你的解决方案的任何其他地方。

更多信息位于此处http://msdn.microsoft.com/en-us/library/c02as0cs.aspx

1

使用属性表的层次结构,或使用像CMake这样的工具为您生成项目文件(因为它应该自动查找所有库/包含)。

对于属性表:为每个项目添加相同的属性表。使用该属性表,包含具有预定义名称的其他属性表。然后在你工作的每台电脑上,你将不得不提供那些“每台机器”属性表。例如:

main.vsprops  -> include by every project 
|- matlab.vsprops -> sets the lib/includes for matlab runtime 
|- opengl.vsprops -> sets the lib/include for opengl 

现在,在您的版本系统,给您提供了包含适合dfeault值和一个批处理文件来创建它们matlab.vsprops和opengl.vsprops默认。通过这种方式,您可以从VCS结帐,运行单个文件,编辑vsprops并开始编码,而不会有太多麻烦。例如:

main.vsprops  -> versioned 
matlab.vsprops.def -> versioned, contains defaults 
opengl.vsprops.def -> versioned, contains defaults 
create_vsprops.bat -> versioned, copies *.vsprops.def to *.vsprops 
相关问题