使用调试文件构建C ++项目

时间:2013-11-21 10:28:08

标签: c++ visual-studio-2012

我有一个C ++的Visual Studio解决方案,包含27个具有已知构建顺序和其他所有项目的项目,我可以成功构建整个解决方案,一切正常。正如您所知,在构建每个项目后,一些文件将在“Debug”中生成(或者“release”)文件夹,我为每个项目访问它们,这个解决方案的26个项目不需要更改,我只想更改一个项目,所以我只是想知道我是否可以使用所有其他26个项目生成的调试文件并构建我的Visual Studio或任何其他IDE中的解决方案? 非常感谢你

2 个答案:

答案 0 :(得分:1)

可视工作室的'调试文件'是* .pdb文件,是专有的MS格式,因此不能在其他IDE中使用: What is the structure of a PDB file?

为每个翻译单元生成VS'* .obj'的中间文件,但是无法轻松地转换到另一个编译器: Is there a tool that can convert a Visual Studio object file to GCC format?

如果您已经拥有VS解决方案,则可以对要编辑的项目进行更改,VS将确保在构建解决方案时重新编译和链接需要更改的每个项目。 如果你想节省时间,你可以告诉VS编译你正在进行的项目而不是整个解决方案。如果适合你,你可能会留在VS.

添加对其他构建系统或IDE的支持应该由熟悉这些项目的有经验的开发人员完成。

答案 1 :(得分:0)

从理论上讲,Visual Studio会发现已经发生了变化(在一个解决方案中),只是说build应该只构建已经发生变化的东西(及其依赖关系)。
请注意,如果将一个编译器中的库和exes与另一个编译器的库一起使用 - 您几乎肯定需要使用相同版本的Visual Studio,因为例如stl的实现将在版本之间更改。 此外,如果你使用不同的编译器,几乎肯定会出现可怕的错误。

如果您使用另一个IDE并将其指向同一个编译器,那么事情应该没问题。

修改
如果“另一个IDE”是指同一个IDE的另一个实例,即您想要打开另一个解决方案,但将其用作“库”,那就没问题了。您不需要.obj个文件 - 它们是构建过程的一部分。如果您需要调试符号,它是您需要的最终.lib.dll文件以及.pdb文件。