Partilhar via


Passo a passo: Usando o MSBuild para criar um projeto do Visual C++

Essa explicação passo a passo demonstra como usar MSBuild para compilar um projeto de Visual C++ em um prompt de comando.Você aprenderá como criar arquivos de origem do C++ e um arquivo de projeto com base em XML para um aplicativo de console de Visual C++ .Após compilar o projeto, você aprenderá como personalizar o processo de compilação.

Essa explicação passo a passo mostra as seguintes tarefas:

  • Criando os arquivos de origem do C++ para seu projeto.

  • Criando o arquivo de projeto XML MSBuild .

  • Usando MSBuild para criar seu projeto.

  • Usando MSBuild para personalizar seu projeto.

Pré-requisitos

Você precisará do seguinte para concluir essa explicação passo a passo:

  • Visual Studio 2010

  • Uma compreensão geral do sistema de MSBuild .

Criando os arquivos de origem do C++

Nesta explicação passo-a-passo você criará um projeto que tem um arquivo de origem e um arquivo de cabeçalho.O arquivo de origem main.cpp contém a função principal para o aplicativo de console.O arquivo de cabeçalho main.h contém o código para incluir o arquivo de cabeçalho de iostream.Você pode criar esses arquivos de C++ usando Visual Studio ou um editor de texto.

Para criar os arquivos de origem do C++ para seu projeto

  1. Crie um diretório para o projeto.

  2. Crie um arquivo chamado main.cpp e adicione o seguinte código ao arquivo:

    // main.cpp : the application source code.
    #include <iostream>
    #include "main.h"
    int main()
    {
       std::cout << "Hello, from MSBuild!\n";
       return 0;
    }
    
  3. Crie um arquivo chamado main.h e adicione o seguinte código ao arquivo:

    // main.h: the application header code.
    /* Additional source code to include. */
    

Criando XML MSBuild Arquivo

Um arquivo de projeto de MSBuild é um arquivo XML que contém um elemento raiz do projeto (<Project>).No seguinte exemplo de projeto, o elemento de <Project> contém sete elementos filho:

  • Três marcas de grupo de item (<ItemGroup>) que especificam a configuração e a plataforma do projeto, o nome do arquivo de origem, e o nome de arquivo do cabeçalho.

  • Três marcas de importação (<Import>) que especificam o local de configurações do Microsoft Visual C++ .

  • Uma tag de grupo de propriedade (<PropertyGroup>) que especifica as configurações do projeto.

Para criar o arquivo de projeto do MSBuild

  1. Use um editor de texto para criar um arquivo de projeto que é chamado myproject.vcxproj, e adicione o seguinte elemento de <Project> raiz.Inserir os elementos nas seguintes etapas do procedimento entre as marcas de <Project> raiz:

    <Project DefaultTargets="Build" ToolsVersion="4.0" xmlns=https://schemas.microsoft.com/developer/msbuild/2003>
    </Project>
    
  2. Adicione os seguintes dois elementos filho de <ProjectConfiguration> em um elemento de <ItemGroup> .O elemento filho especifica configurações de depuração e versão para um sistema operacional Windows de 32 bits:

    <ItemGroup>
       <ProjectConfiguration Include="Debug|Win32">
          <Configuration>Debug</Configuration>
          <Platform>Win32</Platform>
       </ProjectConfiguration>
       <ProjectConfiguration Include="Release|Win32">
          <Configuration>Release</Configuration>
          <Platform>Win32</Platform>
       </ProjectConfiguration>
    </ItemGroup>
    
  3. Adicione o seguinte elemento de <Import/> que especifica o caminho das configurações de opção C++ para este projeto:

    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.default.props" />
    
  4. Adicione o seguinte elemento do grupo de propriedade (<PropertyGroup>) que especifica duas propriedades de projeto:

    <PropertyGroup>
       <ConfigurationType>Application</ConfigurationType>
       <ShowAllFiles>false</ShowAllFiles>
    </PropertyGroup>
    
  5. Adicione o seguinte elemento de <Import/> que especifica o caminho das configurações atuais C++ para este projeto:

    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
    
  6. Adicione o seguinte elemento filho de <ClCompile> em um elemento de <ItemGroup> .O elemento filho especifica o nome do arquivo de origem de C/C++ para compilar:

    <ItemGroup>
       <ClCompile Include="main.cpp" />
    </ItemGroup>
    
  7. Adicione o seguinte elemento filho de <ClInclude> em um elemento de <ItemGroup> .O elemento filho especifica o nome do arquivo de cabeçalho para o arquivo de origem de C/C++:

    <ItemGroup>
       <ClInclude Include="main.h" />
    </ItemGroup>
    
  8. Adicione o seguinte elemento de <Import> que especifica o caminho do arquivo que define o destino para este projeto:

    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Targets" />
    

Dd293607.collapse_all(pt-br,VS.110).gifConclua o Arquivo de projeto

O código a seguir mostra o arquivo de projeto completo que você criou no procedimento anterior.

<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup>
    <ProjectConfiguration Include="Debug|Win32">
      <Configuration>Debug</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|Win32">
      <Configuration>Release</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
  </ItemGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.default.props" />
  <PropertyGroup>
    <ConfigurationType>Application</ConfigurationType>
    <ShowAllFiles>false</ShowAllFiles>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)/Microsoft.Cpp.props" />
  <ItemGroup>
    <ClCompile Include="main.cpp" />
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="main.h" />
  </ItemGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Targets" />
</Project>

Usando MSBuild para compilar seu Projeto

Digite o seguinte comando no prompt de comando para compilar o aplicativo de console:

msbuild myproject.vcxproj /p:configuration=debug

MSBuild cria um diretório para os arquivos de saída e em seguida, cria e links seu projeto para gerar o programa de Myproject.exe.Após o processo de compilação, use o seguinte comando para executar o aplicativo:

myproject

O aplicativo deve exibir “hello, world” do MSBuild na janela do console.

Personalizando seu Projeto

MSBuild permite que você execute destinos predefinidos de compilação, para aplicar propriedades definidos pelo usuário, e para usar ferramentas personalizadas, eventos, e etapas de compilação.Esta seção mostra as seguintes tarefas:

  • Usando MSBuild com alvos de compilação.

  • Usando MSBuild com propriedades de compilação.

  • Usando MSBuild com conjuntos de ferramentas diferentes.

  • Adicionando personalizações de MSBuild .

Dd293607.collapse_all(pt-br,VS.110).gifUsando MSBuild com alvos de compilação

Um destino de compilação é chamado um conjunto de comandos predefinidos ou definidos pelo usuário que podem ser executadas durante a compilação.Use a opção de linha de comando de destino (/t) especificar um destino de compilação.No caso de projeto de myproject , o destino pré-definido de clean excluir todos os arquivos na pasta de depuração e cria um novo arquivo de log.

No prompt de comando, digite o seguinte comando limpar myproject.

msbuild myproject.vcxproj /t:clean

Dd293607.collapse_all(pt-br,VS.110).gifUsando MSBuild com propriedades de compilação

A opção de linha de comando de propriedade (/p) permite que você substitua uma propriedade no arquivo de compilação do projeto.No projeto de myproject , a versão ou a configuração de compilação de depuração são especificadas pela propriedade de Configuration .E sistema operacional que destina-se a executar o aplicativo criado é especificado pela propriedade de Platform .

No prompt de comando, digite o seguinte comando criar uma compilação de depuração do aplicativo de myproject que destina-se a ser executado no Windows de 32 bits.

msbuild myproject.vcxproj /p:configuration=debug /p:platform=win32

Suponha que o projeto de myproject também define uma configuração do Windows de 64 bits, e outra configuração para um sistema operacional personalizado chamado myplatform.

No prompt de comando, digite o seguinte comando criar uma compilação de versão que é executado no Windows de 64 bits.

msbuild myproject.vcxproj /p:configuration=release /p:platform=x64

No prompt de comando, digite o seguinte comando criar uma compilação de versão para myplatform.

msbuild myproject.vcxproj /p:configuration=release /p:platform=myplatform

Dd293607.collapse_all(pt-br,VS.110).gifUsando MSBuild com um conjunto diferente de ferramentas

Se você tem as bibliotecas de Visual C++ 9,0 e 10,0 (conjuntos de ferramentas) instalado, MSBuild pode criar aplicativos para ou Visual C++ 9,0 ou 10,0.Para especificar o kit de ferramentas de Visual C++ 9,0, adicione o seguinte elemento do grupo de propriedade para o arquivo de projeto de Myproject.vcxproj após o elemento de Microsoft.Cpp.props <Import /> :

<PropertyGroup>
    <PlatformToolset>v90</PlatformToolset>
</PropertyGroup>

Para recriar o seu projeto com o kit de ferramentas de Visual C++ 9,0, digite qualquer um dos seguintes comandos:

msbuild myproject.vcxproj /p:PlatformToolset=v90 /t:rebuild 
msbuild myproject.vcxproj /t:rebuild

Dd293607.collapse_all(pt-br,VS.110).gifAdicionando personalizações do MSBuild

MSBuild fornece várias maneiras para personalizar o processo de compilação.Os tópicos a seguir mostram como adicionar passos personalizados de compilação, ferramentas, e eventos ao seu projeto MSBuild :