首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在.vcproj RelativePath中使用“用户宏”

在.vcproj RelativePath中使用“用户宏”
EN

Stack Overflow用户
提问于 2009-05-22 04:39:16
回答 4查看 3K关注 0票数 2

.vcproj files中,有一个项目中所有源文件的列表。

我们如何使用宏来指定源文件的路径?如果我们这样做:

代码语言:javascript
复制
<File
   RelativePath="$(Lib3rdParty)\Qt\qtwinmigrate-2.5-commercial\src\qmfcapp.cpp">
</File>

编译器找不到该文件夹:

代码语言:javascript
复制
qmfcapp.cpp
c1xx : fatal error C1083: Cannot open source file: '.\$(lib3rdparty)\qt\qtwinmigrate- 2.5-commercial\src\qmfcapp.cpp': No such file or directory

如你所见,我们的项目从QT编译成几个源文件。QT位于外部库的文件夹中,我们不希望硬编码从项目到该文件夹的路径(我们有一个非常大的解决方案)

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-10-15 21:15:29

请尝试将“Lib3rdParty”的环境变量设置为适当的相对路径片段。

票数 1
EN

Stack Overflow用户

发布于 2009-05-22 07:12:52

通常的解决方案是将第三方的包含、库和源代码包含在你自己的源代码中,这样你就可以用你的源代码跟踪第三方依赖项的变化。

如果是这种情况,您应该能够使用从每个项目到第三方源文件的相对路径。

然而,如果你的解决方案很大,而且它有复杂的项目设置,那么你应该看看CMake,即使你只在windows上构建。CMake使您能够使用仅在一个位置指定的公共设置来描述构建环境。更复杂的情况可以用变量和宏来处理。然后,它将根据此描述生成您的visual studio项目或makefile。我们引入它是为了支持unix端口,现在我也只将它用于windows开发。

VS项目使用起来真的很笨拙,打开和关闭对话框,设置调试和发布。每个项目都有自己的设置副本,但大多数情况下与所有其他项目相同。

票数 3
EN

Stack Overflow用户

发布于 2010-05-24 10:57:59

如果您从不同的驱动器添加现有文件,您将注意到使用的是绝对路径。

至少在v8.00中,宏似乎没有扩展。我尝试了VC、Ant和OS宏格式--都不起作用。

sysinternals的连接选项、映射的网络路径或在项目/全局源、包含和库路径中设置了宏规范的.lib始终存在。即使使用lib包,您也应该能够进入源代码。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/896371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档