Desenvolvimento Remoto C/C++ - Tutorial do NetBeans IDE
Março de 2014 [Número da revisão: V8.0-1]
Este documento descreve como usar os recursos de desenvolvimento remoto do NetBeans IDE com projetos C/C++/Fortran. Conteúdo![]() RequisitosPara seguir este tutorial, você precisa do software a seguir.
Consulte as Instruções de Instalação do NetBeans IDE e a Configuração do NetBeans IDE para o C/C++/Fortran IntroduçãoEste tutorial demonstra como utilizar o desenvolvimento remoto de projetos C/C++. Alguma vez já desejou desenvolver uma aplicação Solaris ou Linux no seu laptop executando o Windows 7 ou o Mac OS X? Ou testar sua aplicação em sistemas operacionais diferentes sem sair do IDE? Ou simplesmente compilar aplicações grandes em servidores rápidos com vários núcleos em vez de compilar na sua estação de trabalho habitual? A resposta para todas estas necessidades é a funcionalidade de desenvolvimento remoto do NetBeans IDE. Conceitos de Desenvolvimento RemotoAo executar o desenvolvimento remoto, você executa o NetBeans IDE no sistema do cliente e pode criar projetos, editar arquivos e utilizar as funcionalidades de assistência aos códigos da mesma forma que faz em projetos locais. Mas quando você cria, executa ou depura seu projeto, o processo é executado no servidor Solaris ou Linux remoto com a saída e a entrada transferidas para o sistema do cliente. Você não deve detectar diferenças no fluxo de trabalho entre o desenvolvimento local e remoto após a configuração do host de compilação remoto. O IDE suporta diferentes modos de desenvolvimento remoto, que são descritos nos Modos de Desenvolvimento Remoto C/C++. Você pode determina como deseja desenvolvê-los no host remoto. Requisitos de Desenvolvimento RemotoOs elementos necessários para permitir o uso de um host remoto para a execução das ferramentas são:
Compartilhando códigos-fonteTanto o sistema do cliente como o servidor remoto devem ter conhecimento dos arquivos de origem. Os arquivos de origem podem estar em um caminho de rede compartilhada ou podem ser copiados de forma segura pelo IDE a partir do sistema local para o sistema remoto. Consulte Configurando o Sistema para obter mais detalhes sobre como configurar pastas compartilhadas para diferentes sistemas. ConectividadeTodas as transferências de dados entre o cliente e o servidor são feitas usando o protocolo (SSH) Secure Shell. O SSH é um protocolo comum para comunicações seguras entre dois dispositivos de rede. Seu servidor deve ter o servidor SSH instalado e a a conexão SSH entre o sistema do cliente e o servidor deve ser permitida. Coleções de FerramentasO IDE deve estar ativado a encontrar uma coleção de ferramenta suportada no host remoto: Coleção do Compilador GNU, Sun Studio ou Oracle Solaris Studio. As ferramentas executáveis devem estar no caminho da conta do usuário utilizada para conectar ao host remoto, de forma que o IDE possa localizar facilmente tais ferramentas. Isto é verdadeiro principalmente em caso de as ferramentas estarem instaladas em uma localização sem ser a default. Assistência ao CódigoPara uma operação correta das funcionalidades do editor, como autocompletar código e o realce semântico, a janela Classes, e outros, o projeto deve ser utilizado no ambiente apropriado, o que significa que o sistema inclui definições macro, plataforma, etc. Todas estas informações são reunidas no servidor remoto e armazenadas localmente no sistema do cliente, de forma que, ao editar localmente, a assistência ao código funcionará mesmo quando o projeto estiver configurado para utilizar um host de compilação remoto. Configurando o SistemaO servidor Linux ou Solaris remoto deve permitir comunicação por meio do protocolo SSH do cliente no qual você está executando o IDE. Se quiser utilizar o compartilhamento de arquivos em vez de permitir que o IDE copie os arquivos para o servidor remoto, o compartilhamento de arquivos de ambos os sistemas deve ser configurado na rede.Protocolo SSHO servidor SSH geralmente está incluído nos sistemas operacionais Linux e Solaris e, na maioria dos casos, é executado por default. Caso não esteja, é possível encontrar informações sobre a instalação e o gerenciamento do SSH em http://en.wikipedia.org/wiki/Secure_Shell O IDE fornece seu próprio cliente ssh, de forma que não é necessário instalar o cliente ssh no computador local. Uma conexão SSH deve ser permitida entre o cliente e os sistemas do servidor, o que geralmente significa que a porta 22 deve estar aberta no servidor. Pode ser necessário o acesso de raiz ou a ajuda do administrador de sistema caso a porta 22 esteja desativada. O SSH deve estar ativado entre os sistemas mesmo que você não esteja usando a opção Cópia Automática ou SFTP para transferir os arquivos de projetos para o servidor remoto. Compartilhando códigos-fonteCaso você ainda não tenha o compartilhamento de arquivos configurado entre seu sistema Windows e um host remoto Unix para outros usos, será bem mais simples utilizar a opção Cópia Automática ou SFTP em vez do compartilhamento de arquivos para projetos pequenos ou médios. Se estiver trabalhando em um projeto grande com milhares de arquivos que fazem parte da construção, o compartilhamento é melhor porque a cópia pode demorar muito. Para a configuração do Windows para o UNIX®, há duas principais formas de compartilhamento de códigos-fonte:
Organizando Códigos-fonte Usando Samba ou SMBUm servidor Samba (versão de origem aberta de SMB) permite que um usuário Windows mapeie as pastas NFS compartilhadas como unidades de rede do Windows. O pacote do Samba ou de seu equivalente SMB ou CIFS está incluído na maioria das distribuições dos sistemas operacionais Linux e Solaris. Caso o Samba não esteja incluído na sua distribuição, é possível fazer seu download em www.samba.org Caso possua o acesso privilegiado no seu servidor, você mesmo pode configurar o Samba seguindo as instruções nos links seguintes. Caso contrário, você terá que contatar o administrador do sistema.
Depois de iniciar o Samba, é possível mapear as pastas do servidor UNIX da mesma forma que as pastas do Windows. Windows Services For UNIX (SFU)Outra opção é o Windows Services For UNIX, um conjunto de utilitários fornecido pela Microsoft para acessar os sistemas de arquivos NFS a partir do Windows. O pacote SFU não está disponível para os usuários do Windows Vista ou do Windows 7. O Windows Vista e o Windows 7 Enterprise e Ultimate Editions incluem os componentes do Services for Unix, renomeados para as aplicações com base no Subsystem for UNIX (SUA), e o Client for NFS v3. Para obter mais informações, consulte http://en.wikipedia.org/wiki/Microsoft_Windows_Services_for_UNIX Configuração do Mac OS XO Mac OS X inclui suporte para conexão aos servidores Samba. O Mac OS X também pode montar NFS compartilhados de um servidor. É possível utilizar Finder > Ir > Estabelecer Conexão com o Servidor e inserir um endereço do servidor. Para conectar aos servidores SMB/CIFS (Windows) e às pastas compartilhadas, insira o endereço do servidor em um destes forms:
Será solicitado inserir o nome do usuário e a senha para a pasta compartilhada. Para mais informações, consulte Como Estabelecer Conexão ao Compartilhamento de Arquivos do Windows (SMB) em uma base de conhecimento da Apple. Para conectar ao servidor NFS, digite o nome e o caminho do servidor para as pastas compartilhadas do NFS em um destes forms:
Para mais informações, consulte Uso do Finder para Montar Exportações NFS na base de conhecimento da Apple. Não será solicitado inserir o nome do usuário e a senha, mas será verificada a autorização contra seu UID do Mac. O UID é um inteiro exclusivo designado para o nome de usuário em sistemas operacionais similares ao Unix, como o Max OS X, o Solaris e o Linux. Para utilizar o NFS, o UID do Mac deve ser o mesmo que o UID da sua conta no servidor. Configuração UNIX-UNIXPara compartilhamento de arquivos entre os sistemas Solaris ou Linux, não é necessária nenhuma configuração especial. Basta que você compartilhe uma pasta de um dos sistemas ou você pode utilizar o diretório home caso este esteja montado em um servidor de arquivo de rede e esteja acessível de ambos os sistemas. Mapeamento de CaminhoQuando você utiliza o modelo de fontes compartilhadas, pode ser necessário mapear a localização de códigos-fonte no host local para o caminho utilizado no host remoto para obter os códigos-fonte. Por exemplo, observe esta configuração:
Neste caso, do ponto de vista do servidor, os arquivos de origem estão localizados no /export/pub/myproject. Porém, do ponto de vista do cliente, a localização dos arquivos de origem é P:\myproject. É necessário permitir que o IDE saiba que estes caminhos estão mapeados: Você pode editar as propriedades do host de compilação para definir os mapeamentos de caminho. Se forem configurados os recursos compartilhados para os arquivos de origem antes de configurar o host remoto no NetBeans IDE, o IDE descobrirá automaticamente os mapeamentos dos caminhos necessários na maioria dos casos. Configurando o IDENo exemplo seguinte, o host do cliente é uma estação de trabalho que executa o Windows Vista. O host remoto chamado edgard é um servidor que executa o sistema operacional Oracle Solaris.
Caso não esteja listada nenhuma coleção de ferramentasTente as tarefas a seguir se não visualizar nenhuma coleção de ferramenta no nó do host remoto.
Quando você obtém uma coleção de ferramentas listada, a criação do host de compilação remoto está concluída. Na próxima seção, tente o desenvolvimento remoto simples. Construindo um Projeto Local em um Host Remoto
Quase não há diferença no fluxo de trabalho depois da configuração de um host remoto. Você pode utilizar todas as funcionalidades do editor, construir, executar, testar e depurar como está acostumado a fazer localmente. Iniciando uma Sessão do Terminal no Host RemotoÉ possível iniciar a sessão terminal da secure shell dentro do IDE para conectar ao sistema remoto ou ao sistema local. Esta funcionalidade é conveniente principalmente nas plataformas Windows, as quais não suportam nativamente a SSH.
Dicas de Desenvolvimento Remoto
Para Obter Mais InformaçõesConsulte os seguintes locais para obter mais informações:
|
Documentation |