2008-11-24 36 views

回答

27

一个UNIX的家伙可能告诉过你。 :)

您可以在VS中使用makefile,但是当它执行它时,会绕过MSVC IDE中的所有内置功能。 Makefiles基本上就是建造者的reinterpret_cast。 IMO最简单的事情就是使用解决方案。

+10

.vcproj文件有很多膨胀,除非你使用别的东西来生成它们(scons,cmake),否则它会很快变得笨拙。 – Tom 2008-12-09 15:52:56

4

一个makefile的VS等价物是一个“解决方案”(过分简化,我知道)。

+0

我赞成这个,因为它让我发笑,而且非常正确。 – GrahamJ 2016-07-18 15:44:12

1

如果您询问实际的命令行makefiles,那么您可以导出makefile,或者您可以从命令行在解决方案文件上调用MSBuild。你想要用makefile做什么?

您可以在SO上搜索MSBuild以获取更多详细信息。

2

Makefiles和构建文件是关于自动化您的构建。如果您使用MSBuild或NAnt等脚本,则可以直接从命令行构建项目或解决方案。这反过来可以使构建自动化,让它由构建服务器运行。

除了构建解决方案之外,构建脚本通常包含运行单元测试,报告代码覆盖率和复杂性等任务。

8

实际上我用一个makefile调用devenv的建立一个特定的项目之前建立所需的任何依赖关系,如下:

debug: coratools_debug 
    devenv coralib.vcproj /build debug 

coratools_debug: nothing 
    cd ../coratools 
    nmake debug 
    cd $(MAKEDIR) 

您还可以使用的MSBuild工具,做同样的事情:

debug: coratools_debug 
    msbuild coralib.vcxproj /p:Configuration=debug 

coratools_debug: nothing 
    cd ../coratools 
    nmake debug 
    cd $(MAKEDIR) 

在我看来,这比试图找出过于复杂的视觉工作室项目管理方案要容易得多。

47

Microsoft程序维护实用程序(NMAKE.EXE)是一种基于描述文件中包含的命令构建项目的工具。

NMAKE Reference

10

要回答的具体问题...

我使用VS2008。有人可以请建议一些在线参考 或书籍,我可以找到更多关于如何处理它们?

此链接将通过与Visual Studio进行映射,为您介绍Makefiles。

Introduction to Makefiles for Visual Studio developers

,我听到了很多关于makefile文件,以及它们如何简化编译 过程。

Makefiles功能强大且灵活,但可能不是简化过程的最佳解决方案。考虑这个链接中解释的抽象构建过程的CMake。

CMake for Visual Studio Developers

0

要完整的解决方案总结...

有2个选项:

  1. 使用NMAKE从开发人员命令提示符为Visual Studio

的快捷方式存在于您的开始菜单。查看makefile文件以查看是否有任何“设置”操作。操作作为冒号前的第一个单词出现。通常,所有好的makefile文件都有“全部”操作,因此您可以键入:NMAKE全部

  1. 为每个二进制文件创建解决方案和项目文件。

大多数设计良好的开源解决方案都提供了一个makefile文件,其中包含一个设置操作以便为您生成Visual Studio项目文件,因此在Makefile中首先查找这些文件。

否则,您需要将每个文件或一组文件和文件夹拖放到您在Visual Studio中创建的每个新项目中。

希望这会有所帮助。

相关问题