为了账号安全,请及时绑定邮箱和手机立即绑定

如何设置工程无关的 VC++ Directories

如何设置工程无关的 VC++ Directories

慕姐8265434 2019-04-23 15:18:03
前提:有一个放在Git上的VisualC++2012Express工程,需要引用外部的libcurl库(没有包含在版本库中)。当前使用的引用的方法是在工程属性VC++Directories里的IncludeDirectories和LibraryDirectories添加我机器上的相应路径(D:\libcurl\XXX)。但这样一来,这个路径就保存在了.vcxproj工程文件里。如果别人的libcurl路径与我不同,那么他clone后想要成功编译工程只能:修改工程属性中的路径(工程文件变为被修改的状态,潜在的冲突/强迫症)把自己的libcurl放到D:\libcurl\XXX(不灵活,强制指定了路径)于是我的问题是:如何修改VC++Directories设置才能避免这种情况?(如果是VisualC++2008之前的版本,那么可以在Tools->Options里设置全局的VC++Directories。从而可以不修改工程文件,而是把自定义的外部库路径加到自己的全局设置里。但新版本中已经没有办法这样做了。)
查看完整描述

2 回答

?
慕容708150

TA贡献1831条经验 获得超4个赞

一般的做法是定义成环境变量,比如
LIBCURL_INCPATH
LIBCURL_LIBPATH然后加入工程路径
$(LIBCURL_INCPATH)
$(LIBCURL_LIBPATH)当然直接修改vcxproj也不大好,所以最好用PropertyManager,放到一个.props的文件中,比如:
$(LIBCURL_INCPATH);$(IncludePath)
$(LIBCURL_LIBPATH);$(LibraryPath)
另外,如果会CMake,GYP之类的工具,就简单多了,工程文件直接生成就行了。
                            
查看完整回答
反对 回复 2019-04-23
?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

vs2008貌似把目录设置移到了项目属性里面.来说下我的办法:
1>使用VC++目录(项目属性)-这个需要改动工程文件
2>使用符号链接,我把所有的sdk目录固定在c:/sdk.如果机器上的sdk目录不在c:/sdk里,通过符号链接映射过去
好处:不用改工程设置,不用在乎sdk的目录设置,而且方便sdk版本切换
                            
查看完整回答
反对 回复 2019-04-23
  • 2 回答
  • 0 关注
  • 239 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信