Usando o Descritor da Coleção de Ferramentas C/C++ - Tutorial do NetBeans IDE

This tutorial needs a review. You can open a JIRA issue, or edit it in GitHub following these contribution guidelines.

Contribuição de _Alexander Simon_ Março de 2014 [Número da revisão: V8.0-1]

netbeans stamp
Figure 1. O conteúdo desta página se aplica ao NetBeans IDE 8.0

Para seguir este tutorial, você precisa do software a seguir.

Software Versão Necessária

NetBeans IDE (incluindo o suporte ao C/C++)

Versão 8.0

Java Development Kit (JDK)

Versão 7 ou 8

Consulte as Instruções de Instalação do NetBeans IDE e a + Configuração do NetBeans IDE para o C/C+/Fortran para obter informações sobre o download e a instalação do software necessário.

Introdução

Este tutorial demonstra como editar coleções de ferramentas existentes ou criar a versão personalizada de uma coleção no NetBeans IDE 8.0.

O exemplo mostrado se aplica à coleção de ferramentas GNU para Oracle Solaris e Linux, mas os conceitos também podem ser aplicados ao Windows e ao Mac. Usando estas informações, você pode aprender a fazer o seguinte:

  • Alterar os flags do compilador que o IDE usa por default para compilar arquivos C/C++

  • Adicionar um compilador que não é suportado pelo IDE

Coleções de Ferramentas

Uma coleção de ferramentas é um conjunto de compiladores, um utilitário make e um depurador que é especificado no IDE por meio do descritor de coleção da ferramenta. Cada vez que você compila, executa ou depura seu código, o IDE executa um arquivo executável que é descrito no descritor de coleção de ferramentas para a coleção de ferramentas para a qual o projeto está configurado para usar. A funcionalidade Assistência ao Código inclui caminhos e macros obtidos do descritor da coleção de ferramentas.

O descritor da coleção de ferramentas é um arquivo XML localizado no módulo IDE_HOME/cnd/modules/org-netbeans-modules-cnd-toolchain.jar na pasta org/netbeans/modules/cnd/toolchain/resources/toolchaindefinition/ . Você não deve editar estes arquivos XML do descritor de ferramentas do IDE original.

Este artigo informa como criar duplicações dos descritores da ferramenta em seu próprio diretório do usuário do NetBeans que você pode editar. Em seguida, o IDE usará as informações nos descritores de coleções de ferramentas localizados no diretório do usuário, em vez de nas versões originais.

Coleções de Ferramentas de Contribuição da Comunidade

Alguns plug-ins para as coleções de ferramentas foram enviados pelos usuários da comunidade NetBeans:

Observe que esses plug-ins não são suportados oficialmente, mas são mencionados aqui, caso você os ache úteis na criação de seus próprios plug-ins.

Pode ser que os usuários do Windows também fiquem interessados em um artigo de um usuário da comunidade NetBeans: NetBeans Setup and GNU Cross-Toolchain Configuration for ARM Development.

Editando os Descritores de Coleções de Ferramentas

A edição de um descritor da coleção de ferramentas é um pouco difícil, visto que o NetBeans IDE não oferece uma GUI para edição de descritores. Esta seção descreve como fazer cópias de "sombra" dos descritores de coleção da ferramenta que você pode editar, a fim de alterar a forma pela qual o IDE usa as ferramentas.

  1. Saia do IDE se ele estiver em execução.

  2. Edite o arquivo IDE-HOME/etc/netbeans.conf , no qual IDE-HOME é o diretório de instalação do NetBeans.

  3. Adicione o seguinte flag à entrada netbeans_default_options :

-J-Dcnd.toolchain.personality.create_shadow=true
  1. Inicie o IDE, escolha Ferramentas > Opções e selecione C/C++ na parte superior do painel da janela Opções.

O IDE cria um diretório que contém versões de "sombra" dos descritores da coleção de ferramentas no diretório do usuário NetBeans:

userdir

/config/CND/ToolChain

A localização de seu diretório de usuário do NetBeans varia de acordo com seu sistema operacional. Algumas possíveis localizações do diretório userdir/config/CND/ToolChain incluem o seguinte:

  • Windows: C:\Documents and Settings_username_\Application Data\NetBeans_version_\config\CND\ToolChain

  • Mac: /Users/username/Library/Application Support/NetBeans/version/config/CND/ToolChain

  • Linux e Solaris: /home/username/.netbeans/version/config/CND/ToolChain

A lista de descritores deve ser semelhante à seguinte:

CLang.xml                             SunStudio.xml
CLang_mac.xml                         SunStudio_10.xml
CLang_solaris.xml                     SunStudio_11.xml
Cygwin.xml                            SunStudio_12.1_solaris-sparc.xml
Cygwin_4.x.xml                        SunStudio_12.1_solaris-x86_linux.xml
GNU.xml                               SunStudio_12.2_linuxCompatGNU.xml
GNU_mac.xml                           SunStudio_12.2_solaris-sparc.xml
GNU_solaris.xml                       SunStudio_12.2_solaris-x86_linux.xml
Intel.xml                             SunStudio_12.3_linuxCompatGNU.xml
Interix.xml                           SunStudio_12.3_solaris-sparc.xml
MinGW.xml                             SunStudio_12.3_solaris-x86_linux.xml
MinGW_TDM.xml                         SunStudio_12.xml
OSS_linuxCompatGNU.xml                SunStudio_8.xml
OSS_solaris-sparc.xml                 SunStudio_9.xml
OSS_solaris-x86_linux.xml             WinAVR.xml
OracleSolarisStudio.xml

Você pode editar o descritor para a toolchain que você está usando. Por exemplo, se estiver usando GNU no Solaris, edite o arquivo GNU_solaris.xml ; se você estiver usando MinGW no Windows, você deve editar o arquivo MinGW.xml .

Para obter informações sobre as tags usadas nestes arquivos XML do descritor, consulte Detalhes do Arquivo XML da Coleção de Ferramentas. Você pode alterar os valores das tags para alterar o procedimento das ferramentas no IDE.

Os descritores deste diretório têm prioridade em relação às versões oficiais no diretório IDE-HOME. Você deve deletar os descritores de ferramenta que você não deseja que o IDE use, em seu diretório do usuário.

  1. Remova o flag -J-Dcnd.toolchain.personality.create_shadow=true do IDE-HOME/etc/netbeans.conf , de forma que o IDE não crie descritores de sombra novamente.

  1. Reinicie o IDE para usar o descritor de ferramentas modificado quando terminar de fazer as alterações.

Criando uma Coleção de Ferramentas Personalizada

Esta seção mostra como criar uma coleção de ferramentas que é baseada na coleção de ferramentas GNU com algumas alterações para os flags do compilador para depuração. O exemplo mostra etapas para criar um novo módulo do NetBeans que contenha uma nova coleção de ferramentas para permitir que você compartilhe a coleção de ferramentas ou use-a em outras instâncias do IDE.

Para obter informações gerais sobre a criação de módulos NetBeans, consulte Início Rápido do Plug-in do NetBeans.

Para criar uma coleção de ferramentas personalizada:

  1. Certifique-se de que sua instalação do NetBeans inclua o módulo de Desenvolvimento de Plug-in do NetBeans.

Escolha Ferramentas > Plug-ins e clique na guia Instalados. Se o módulo Desenvolvimento de Plug-in do NetBeans não estiver instalado, clique na guia Plug-ins Disponíveis e instale o módulo. É possível encontrá-lo rapidamente digitando "plug-in" na caixa Pesquisar.

  1. Crie um novo módulo NetBeans escolhendo Arquivo > Novo Projeto. Na página Escolher Projeto do assistente de Novo Projeto, selecione a categoria Módulos NetBeans e o projeto Módulo na primeira etapa do assistente. Clique em Próximo.

  1. Na página Nome e Localização, digite o nome do projeto, por exemplo mytoolchain e deixe todos os campos como estão. Clique em Próximo.

  1. Na página Configuração Básica do Módulo, digite org.myhome.mytoolchain para Base do Nome do Código, que define a string exclusiva que identifica o módulo que você está criando. A base do nome do código também é usada como o pacote principal do módulo.

  1. Não marque a caixa de seleção "Gerar Pacote OSGi", pois você usará o sistema de módulos do NetBeans default, em vez do OSGi.

  1. Clique em Finalizar. O IDE cria um novo projeto chamado mytoolchain.

  1. Na guia Projetos, clique com o botão direito do mouse no nó do projeto mytoolchain e selecione Novo > Outros.

  1. No assistente Novo Arquivo, selecione a categoria Desenvolvimento do Módulo e o tipo de arquivo Camada XML. Em seguida, clique em Próximo e em Finalizar.

O IDE cria layer.xml no nó Pacotes de Código-fonte, no pacote principal org.myhome.mytoolchain e abre layer.xml no editor.

  1. Se o arquivo contiver uma tag <filesystem/> , substitua-a pelas tags filesystem de abertura e fechamento: <filesystem>

 ``</filesystem>``
  1. Copie e cole o texto seguinte dentro da tag layer.xml na tag filesystem :

<folder name="CND">
        <folder name="Tool">
            <file name="GNU_tuned_flavor" url="toolchain/GNU_tuned_flavor.xml">
                <attr name="extends" stringvalue="GNU_flavor"/>
            </file>
            <file name="GNU_tuned_cpp" url="toolchain/GNU_tuned_cpp.xml">
                <attr name="extends" stringvalue="GNU_cpp"/>
            </file>
        </folder>
        <folder name="ToolChains">
            <folder name="GNU_tuned">
                <attr name="position" intvalue="5000"/>
                <attr name="SystemFileSystem.localizingBundle" stringvalue="org.myhome.mytoolchain.Bundle"/>
                <file name="flavor.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_tuned_flavor"/>
                </file>
                <file name="c.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_c"/>
                </file>
                <file name="cpp.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_tuned_cpp"/>
                </file>
                <file name="fortran.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_fortran"/>
                </file>
                <file name="assembler.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_assembler"/>
                </file>
                <file name="scanner.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_scanner"/>
                </file>
                <file name="linker.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_linker"/>
                </file>
                <file name="make.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_make"/>
                </file>
                <file name="debugger.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_debugger"/>
                </file>
                <file name="qmake.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_qmake"/>
                </file>
                <file name="cmake.shadow">
                    <attr name="originalFile" stringvalue="CND/Tool/GNU_cmake"/>
                </file>
            </folder>
        </folder>
    </folder>
  1. Abra o arquivo Bundle.properties e adicione a seguinte string: CND/ToolChains/GNU_tuned=My GNU Tuned Tool Collection

  1. Crie um subpacote toolchain clicando com o botão direito do mouse no pacote org.myhome.mytoolchain em Pacotes de Código-fonte e selecionando Novo > Pacote Java. Substitua o nome do pacote default newpackage por toolchain e clique em Finalizar. O IDE cria o subpacote org.myhome.mytoolchain.toolchain .

  1. Crie um novo arquivo, clicando com o botão direito do mouse no subpacote org.myhome.mytoolchain.toolchain e selecionando Novo > Arquivo Vazio. Chame o projeto de GNU_tuned_flavor.xml e clique em Finalizar.

Se você não visualizar Arquivo Vazio como uma opção, selecione Outros e, no assistente Novo Arquivo, selecione a categoria Outros e o tipo de arquivo Arquivo Vazio e clique em Próximo.

Este arquivo é o descritor de coleção de ferramentas para a nova coleção de ferramentas.

  1. Copie e cole o texto seguinte em GNU_tuned_flavor.xml :

<?xml version="1.0" encoding="UTF-8"?>
<toolchaindefinition xmlns="https://netbeans.org/ns/cnd-toolchain-definition/1">
    <toolchain name="GNU_tuned_flavor" display="GNU_tuned" family="GNU" qmakespec="${os}-g++"/>
    <platforms stringvalue="linux,sun_intel,sun_sparc"/>
</toolchaindefinition>
  1. Crie outro arquivo novo, clicando com o botão direito do mouse no subpacote org.myhome.mytoolchain.toolchain e selecionando Novo > Arquivo Vazio. Chame o projeto de GNU_tuned_cpp.xml e clique em Próximo.

  1. Copie e cole o texto seguinte em GNU_tuned_cpp.xml :

<?xml version="1.0" encoding="UTF-8"?>
<toolchaindefinition xmlns="https://netbeans.org/ns/cnd-toolchain-definition/1">
    <cpp>
        <compiler name="g++"/>
        <development_mode>
            <fast_build flags=""/>
            <debug flags="-g3 -gdwarf-2" default="true"/>
            <performance_debug flags="-g -O"/>
            <test_coverage flags="-g"/>
            <diagnosable_release flags="-g -O2"/>
            <release flags="-O2"/>
            <performance_release flags="-O3"/>
        </development_mode>
    </cpp>
</toolchaindefinition>

Observe que os flags de depuração estão definidos como -g3 e -gdwarf-2, que são diferentes dos flags definidos na descrição da coleção de ferramentas GNU default.

A árvore do projeto deve ter uma aparência semelhante à seguinte:

project
Figure 2. Árvore do projeto

As pastas Teste de Unidade talvez não exista.

  1. Na janela Projetos, clique com o botão direito do mouse no nó do projeto mytoolchain e escolha Executar. O módulo é construído e instalado em uma nova instância do IDE, que é a plataforma de destino default dos módulos. A plataforma de destino se abre, de modo que você possa experimentar o novo módulo.

  1. No módulo em execução, escolha Ferramentas > Opções, selecione C/C++ na parte superior do painel da janela Opções e selecione a guia Ferramentas de Construção.

  1. Se a nova coleção de ferramentas (GNU_tuned) não for exibida, clique em Restaurar Default. Clique em Sim para continuar quando solicitado para verificar novamente seu ambiente.

O IDE mostra a nova coleção de ferramentas:

options
Figure 3. Painel Opções
  1. Crie um novo projeto C/C de amostra ``Bem-Vindo`` selecionando Arquivo > Novo Projeto > Amostras > C/C > Bem-Vindo.

  1. Clique com o botão direito do mouse no nó do projeto e escolha Propriedades. Na caixa de diálogo Propriedades do Projeto, selecione o nó Construir, defina a Coleção de Ferramentas como a coleção de ferramentas GNU_tuned e clique em OK.

  1. Construa o projeto. Observe que o compilador tem os flags -g3 -gdwarf-2

g++ -c -g3 -gdwarf-2 -MMD -MP -MF build/Debug/GNU_tuned-Solaris-x86/welcome.o.d -o build/Debug/GNU_tuned-Solaris-x86/welcome.o welcome.cc
  1. Na caixa de diálogo Propriedades do Projeto, selecione a coleção de ferramentas GNU e clique em OK.

  1. Construa o projeto novamente e compare a linha compilada na janela de saída:

g++ -c -g -MMD -MP -MF build/Debug/GNU-Solaris-x86/welcome.o.d -o build/Debug/GNU-Solaris-x86/welcome.o welcome.cc

Você verá que a coleção de ferramentas GNU_tuned tem diferentes flags do compilador para depuração, Modo de Desenvolvimento para o compilador GNU.

Se quiser usar o novo módulo para a coleção de ferramentas GNU_tuned no seu IDE habitual, você pode criar um binário (um arquivo .nbm) e adicioná-lo como um plug-in:

  1. Clique com o botão direito do mouse no projeto do módulo mytoolchain e selecione Criar NBM. O arquivo .nbm é criado no subdiretório de construção do projeto, o qual pode ser visto na guia Arquivos.

  2. Selecione Ferramentas > Plug-ins e clique na guia Submetido a Download na caixa de diálogo Plug-ins.

  3. Clique em Adicionar Plug-ins, vá até o diretório de construção, selecione o módulo do arquivo .nbm e clique em Abrir. O módulo de plug-in é adicionado à lista na guia Submetido a Download.

  4. Clique na caixa de seleção para selecionar o módulo na guia Submetido a Download e clique no botão Instalar. O Instalador de Plug-in do NetBeans e aberto.

  5. Clique em Próximo para avançar pelo instalador e continuar até que a instalação seja finalizada.

  6. Reinicie o IDE, em seguida, escolha Ferramentas > Opções, selecione C/C++ na parte superior do painel da janela Opções e selecione a guia Ferramentas de Construção.

  7. Se a nova coleção de ferramentas (GNU_tuned) não for exibida, clique em Restaurar Defaults. Clique em Sim para continuar quando solicitado para verificar novamente seu ambiente.

Detalhes do Arquivo XML da Coleção de Ferramentas

Trata-se de uma descrição das tags mais importantes do arquivo xml da coleção de ferramentas.

Para obter um esquema de todas as tags e atributos suportados dos arquivos xml de toolchain, você pode pesquisar o arquivo toolchaindefinition.xsd na árvore do código-fonte do NetBeans IDE.

Tags de definição da coleção de ferramentas

Tags Atributos Descrição

toolchain

Nome da coleção de ferramentas

nome

Nome da coleção de ferramentas

exibição

Nome de exibição da coleção de ferramentas

família

Nome do grupo da coleção de ferramentas

plataformas

Plataformas suportadas

stringvalue

Lista das plataformas suportadas separadas por vírgula. Os valores possíveis são:

* linux * unix * sun_intel * sun_sparc * windows * mac * none

makefile_writer

Escritor de makefile personalizado.

classe

Nome da classe do escritor de makefile personalizado. Deve implementar org.netbeans.modules.cnd.makeproject.spi.configurations.MakefileWriter.

drive_letter_prefix

Prefixo especial para nomes de arquivos

stringvalue

"/" para unix "/cygdrive/" para cygwin no Windows

base_folders

Contêiner das tags base_folder. Uma ou mais tags base_folder estão contidas em uma tag base_folders.

base_folder

Descrição do diretório-base dos compiladores. Este tag pode conter as seguintes tags:

regestry

Chave de registro do Windows da ferramenta. Observe que a tag XML deve ser escrita "regestry" embora seja um erro ortográfico.

pattern

Expressão regular que permite que o NetBeans IDE localize o compilador no registro

suffix

Pasta com os arquivos executáveis

path_patern

Expressão regular que permite que o NetBeans IDE localize o compilador examinando os caminhos. Observe que a tag XML deve ser escrita "path_patern" embora seja um erro ortográfico.

command_folders

Contêiner das tags command_folder. Uma ou mais tags commander_folder estão contidas em uma tag command_folders.

command_folder

Descreve o diretório no qual se encontram os comandos do tipo UNIX. Necessários somente para compiladores MinGW no Windows. A tag command_folder pode conter as seguintes tags:

regestry

Chave de comandos de registro do Windows. Observe que a tag XML deve ser escrita "regestry" embora seja um erro ortográfico.

pattern

Expressão regular que permite que o NetBeans IDE localize a pasta de comandos no registro

suffix

Pasta com os arquivos executáveis

path_patern

Expressão regular que permite que o NetBeans IDE localize os comandos. Observe que a tag XML deve ser escrita "path_patern" embora seja um erro ortográfico.

scanner

Nome do serviço de parser de erros, consulte Criando um Handler de Erros Personalizado para o Compilador

id

Nome do serviço de parser de erros

Flags do Compilador

Esta tabela lista as tags usadas para descrever os compiladores e especificar os flags do compilador para toolchain.

Tags Descrição Exemplo de compilador GNU

c,cpp

O conjunto de flags do compilador está localizado nos subnós a seguir

reconhecedor

Expressão regular que permite que o IDE localize o compilador

Para GNU em cygwin no Windows .[\\/].*cygwin.[\\/]bin[\\/]?$

compilador

Nome do compilador (nome do arquivo executável)

gcc ou g++

versão

Flag de versão

--version

system_include_paths

Flags para obter caminhos de inclusão do sistema

-x c -E -v

system_macros

Flags para obter as macros do sistema

-x c -E -dM

user_include

Flag para adicionar caminho de inclusão do usuário

-I

user_file

Flag para incluir o conteúdo de file antes de outros arquivos

-include file

user_macro

Flag para adicionar macro do usuário

-D

development_mode

Grupos de flags para diferentes modos de desenvolvimento

warning_level

Grupos de flags para diferentes níveis de advertência

architecture

Grupos de flags para diferente arquitetura

strip

Flag para informações de depuração de faixa

-s

c_standard

Especifica os flags para usar os padrões C. Use com as tags c89, c99 e c11.

c89 flags="-std=c89" c99 flags="-std=c99" c11 flags="-std=c11"

cpp_standard

Especifica os flags para usar os padrões C++. Use com as tags cpp98 e cpp11.

cpp98 flags="-std=c98" cpp11 flags="-std=c11" cpp11 flags="-std=gnu++0x"

output_object_file

Flags para especificar o arquivo do objeto

-o (deve ter o seguinte espaço -o)

dependency_generation

Flags de geração de dependência

-MMD -MP -MF $@.d

precompiled_header

Flag do cabeçalho pré-compilado

-o $@

important_flags

Expressão regular que especifica quais flags do compilador alteram os caminhos de inclusão e as macros predefinidas do sistema padrão para assistência de código

-O1

-O2

-O3

-O4

-O5

-Ofast

-Og

-Os

-ansi

-fPIC

-fPIE

-fasynchronous-unwind-tables

-fbuilding-libgcc

-fexceptions

-ffast-math

-ffinite-math-only

-ffreestanding

-fgnu-tm

-fhandle-exceptions

-fleading-underscore

-fno-exceptions

-fno-rtti

-fnon-call-exceptions

-fnon-call-exceptions

-fopenmp

-fpic

-fpie

-fsanitize=address

-fshort-double

-fshort-wchar

-fsignaling-nans

-fstack-protector(\W

$

-)

-fstack-protector-all

-funsigned-char

-funwind-tables

-g(\W

$

-)

-ggdb

-gsplit-dwarf

-gtoggle

-m128bit-long-double

-m3dnow

-m64

-mabm

-madx

-maes

-march=.*

-mavx

-mavx2

-mbmi

-mbmi2

-mf16c

-mfma(\W

$

-)

-mfma4

-mfsgsbase

-mlong-double-64

-mlwp

-mlzcnt

-mpclmul

-mpopcnt

-mprfchw

-mrdrnd

-mrdseed

-mrtm

-msse3

-msse4(\W

$

-)

-msse4.1

-msse4.2

-msse4a

-msse5

-mssse3

-mtbm

-mtune=.*

-mx32

-mxop

-mxsave

-mxsaveopt

-pthreads

-std=.*

-xc($

+\+$)

multithreading

Grupos de flags de suporte a multithreading

Só para a coleção de ferramentas do Oracle Solaris Studio; não usado para as coleções de ferramentas com base em GNU

standard

Grupos de flags para diferentes padrões de linguagem

Só para a coleção de ferramentas do Oracle Solaris Studio; não usado para as coleções de ferramentas com base em GNU

language_extension

Criando um Provedor de Compilador Personalizado

O NetBeans IDE possui um provedor de compilador default: org.netbeans.modules.cnd.toolchain.compilers.MakeProjectCompilerProvider Este provedor funciona bastante bem na maioria dos toolchains, mas você pode criar seu próprio provedor.

Para criar seu próprio provedor de compilador:

  • amplie a classe abstrata org.netbeans.modules.cnd.api.compilers.CompilerProvider

  • defina a classe como serviço e coloque-a antes do provedor default:

@org.openide.util.lookup.ServiceProvider(service = org.netbeans.modules.cnd.spi.toolchain.CompilerProvider.class,
position=500)
public class CustomCompilerProvider extends CompilerProvider {
...
}

O atributo position=500 garante que o provedor personalizado será chamado antes do provedor default. O provedor personalizado deveria retornar "Tool" não-nula no método "createCompiler()" para a ferramenta que deveria ser substituída.

Criando um Handler de Erros Personalizado para o Compilador

O NetBeans IDE possui dois handlers de erros do compilador default.

  • para compilador GNU

  • para compilador Sun Studio

O handler do compilador GNU funciona bastante bem em qualquer compilador GNU, mas, se quiser, pode definir seus próprios handlers de erros do compilador.

*Para criar seu próprio handler de erro do compilador: *

  • estenda a classe abstrata org.netbeans.modules.cnd.api.compilers.CompilerProvider

  • defina a classe como serviço:

@org.openide.util.lookup.ServiceProvider(service = org.netbeans.modules.cnd.spi.toolchain.CompilerProvider.class)
      public class CustomCompilerProvider extends ErrorParserProvider {
          ...
          @Override
          public String getID() {
      	return "MyParser";  // NOI18N
          }
      }
  • vincule o scanner de erros e a descrição da coleção de ferramentas usando o ID:

</scanner id="MyParser">
...
  </scanner>

Consulte Também

Consulte a link:https://netbeans.org/kb/trails/cnd.html[+Trilha do Aprendizado C/C+] para obter mais artigos sobre o desenvolvimento com C/C/Fortran no NetBeans IDE.

link:mailto:users@cnd.netbeans.org?subject=Feedback:Using%20the%20C/C+%20Tool%20Collection%20Descriptors%20-%20NetBeans%20IDE%208.0%20Tutorial[+Enviar Feedback neste Tutorial]