繁体   English   中英

从CVS签入和签出后,在Visual C ++项目中生成问题

[英]Build problems with Visual C++ project after checking in and checking out from CVS

我正在构建一个跨平台产品,其中一项要求是跨Windows(win32,AMD64和IA61)。 该产品是相对简单的CLI,但是我们有一个单独的构建团队,他们从CVS中检出代码并在单独的构建环境中进行构建。 我能够在一个平台(AMD机器)上成功构建(使用Visual C ++ 2005)。 但是,一旦我签入代码,就签出构建失败。

生成失败的原因是因为在属性表中错误地指定了包含库路径。 具体地说,错误地指定了属性页中链接器下的输出文件文件夹。 因此,这些库与其他项目期望的文件夹位于不同的文件夹中。

但是,与源一起,我也每次都签入.sln文件(以及以后的.vcproj文件)。 更进一步,如果我在构建失败的文件夹中打开.sln文件,则可以成功构建(预检)的文件夹之间没有区别。 实际上,使用windiff时,我看不到两个构建文件夹之间的任何区别(某些.ncb和cvs日志文件除外)。

所以知道发生了什么吗? VC ++ 2005在哪里将include目录从.sln移到哪里? CVS是否以某种方式干扰了流程? 我还有其他可以尝试的方法。

提前致谢。

只是更新问题就解决了。 根本原因是未在CVS中检查.vcproj文件! 这是单个项目设置的存储位置(我印象是这是在.sln文件中完成的)。

我认为问题可能在于您在一个构建配置中更改了设置(例如x86-Release)之后,却忘记了为另一配置(例如ia64-Debug)更改它们,并且当配置更改时,您就遇到了这个问题。

我要检查的另一件事是项目依赖项。 如果以正确的方式设置了这些内容,即使更改输出文件夹,VS也会在项目输出的确切位置查找项目输出。

您是否以ASCII格式签入了任何二进制文件?

由于CVS对ASCII文件执行字符处理(例如,为您的OS提供正确的行尾代码),因此往返CVS的往返可能会损坏被错误标记为ASCII的二进制文件。 即使在全Windows环境中也可能发生损坏。

有关更多信息,请参见CVS FAQ中的Binary部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM