Scaricare, installare e configurare il carico di lavoro Linux

I progetti Linux sono supportati in Visual Studio 2017 e versioni successive. Per visualizzare la documentazione per queste versioni, impostare il controllo selettore della versione di Visual Studio per questo articolo su Visual Studio 2017 o Visual Studio 2019. Si trova nella parte superiore del sommario in questa pagina.

È possibile usare l'IDE di Visual Studio in Windows per creare, modificare ed eseguire il debug di progetti C++ eseguiti in un sistema Linux remoto, in una macchina virtuale o in sottosistema Windows per Linux.

È possibile lavorare sulla codebase esistente che usa CMake senza doverla convertire in un progetto di Visual Studio. Se il codebase è multipiattaforma, è possibile scegliere sia Windows che Linux da Visual Studio. Ad esempio, è possibile modificare, compilare ed eseguire il debug del codice in Windows usando Visual Studio. Quindi, ridestinare rapidamente il progetto per Linux per compilare ed eseguire il debug in un ambiente Linux. I file di intestazione Linux vengono copiati automaticamente nel computer locale. Visual Studio li usa per fornire il supporto completo di IntelliSense (completamento istruzioni, Vai a definizione e così via).

Per questi scenari è necessario il carico di lavoro Sviluppo di applicazioni Linux con C++.

Configurazione di Visual Studio

  1. Digitare "Programma di installazione di Visual Studio" nella casella di ricerca di Windows:

    Screenshot of the Windows search box which contains the text: visual studio installer.

  2. Cercare il programma di installazione nei risultati App e farci doppio clic sopra. Quando si apre il programma di installazione, scegliere Modifica e quindi fare clic sulla scheda Carichi di lavoro. Scorrere verso il basso fino ad Altri set di strumenti e selezionare il carico di lavoro Sviluppo Linux con C++.

    Screenshot highlighting the Visual C++ for Linux Development workload item in Visual Studio Installer.

    Viene selezionato il carico di lavoro Sviluppo Linux. Il riquadro Dettagli installazione è evidenziato, che elenca gli elementi inclusi nel carico di lavoro. Tra cui: funzionalità di base di Visual Studio C++, Runtime C universale di Windows, Visual C++ per lo sviluppo linux. Viene selezionato anche un componente facoltativo: Strumenti Visual C++ per CMake e Linux.

  3. Se la destinazione è IoT o piattaforme incorporate, passare al riquadro Dettagli installazione a destra. In Sviluppo linux con C++ espandere Componenti facoltativi e scegliere i componenti necessari. Il supporto di CMake per Linux è selezionato per impostazione predefinita.

  4. Fare clic su Modifica per continuare con l'installazione.

Opzioni per la creazione di un ambiente Linux

Se non si ha già un computer Linux, è possibile creare una macchina virtuale Linux in Azure. Per altre informazioni, vedere Guida introduttiva: Creare una macchina virtuale Linux nel portale di Azure.

In Windows 10 e versioni successive è possibile installare e impostare come destinazione la distribuzione linux preferita nel sottosistema Windows per Linux (WSL). Per altre informazioni, vedere Guida all'installazione del sottosistema Windows per Linux per Windows 10. Se non riesci ad accedere a Windows Store, puoi scaricare manualmente i pacchetti di distribuzione WSL. WSL è un ambiente console pratico, ma non è consigliato per le applicazioni grafiche.

I progetti Linux in Visual Studio richiedono l'installazione delle dipendenze seguenti nel sistema Linux remoto o WSL:

  • Un compilatore : Visual Studio 2019 e versioni successive hanno il supporto completo per GCC e Clang.
  • gdb : Visual Studio avvia automaticamente gdb nel sistema Linux e usa il front-end del debugger di Visual Studio per offrire un'esperienza di debug completamente fedele in Linux.
  • rsync e zip : l'inclusione di rsync e zip consente a Visual Studio di estrarre i file di intestazione dal sistema Linux al file system Windows per l'uso da parte di IntelliSense.
  • Fare
  • openssh-server (solo sistemi Linux remoti): Visual Studio si connette a sistemi Linux remoti tramite una connessione SSH sicura.
  • CMake (solo progetti CMake ): è possibile installare i file binari CMake collegati in modo statico di Microsoft per Linux.
  • ninja-build (solo progetti CMake): Ninja è il generatore predefinito per le configurazioni Linux e WSL in Visual Studio 2019 versione 16.6 o successiva.

I comandi seguenti presuppongono che si usi g++ anziché clang.

I progetti Linux in Visual Studio richiedono l'installazione delle dipendenze seguenti nel sistema Linux remoto o WSL:

  • gcc - Visual Studio 2017 offre il supporto completo per GCC.
  • gdb : Visual Studio avvia automaticamente gdb nel sistema Linux e usa il front-end del debugger di Visual Studio per offrire un'esperienza di debug completamente fedele in Linux.
  • rsync e zip : l'inclusione di rsync e zip consente a Visual Studio di estrarre i file di intestazione dal sistema Linux al file system Windows da usare per IntelliSense.
  • Fare
  • openssh-server : Visual Studio si connette a sistemi Linux remoti tramite una connessione SSH sicura.
  • CMake (solo progetti CMake ): è possibile installare i file binari CMake collegati in modo statico di Microsoft per Linux.

Installazione di Linux: Ubuntu in WSL

Quando si usa WSL come destinazione, non è necessario aggiungere una connessione remota o configurare SSH per compilare ed eseguire il debug. Per la sincronizzazione automatica delle intestazioni di Linux con Visual Studio per il supporto di Intellisense sono necessari zip e rsync. Ninja-build è necessario solo per i progetti CMake. Se le applicazioni necessarie non sono già presenti, è possibile installarle usando questo comando:

sudo apt-get install g++ gdb make ninja-build rsync zip

Ubuntu nei sistemi Linux remoti

Il sistema Linux di destinazione deve avere openssh-server, g++, gdb e deve essere installato. Ninja-build è necessario solo per i progetti CMake. Il daemon ssh deve essere in esecuzione. Zip e rsync sono necessari per la sincronizzazione automatica delle intestazioni remote con il computer locale per il supporto di IntelliSense. Se queste applicazioni non sono già presenti, è possibile installarle nel modo seguente:

  1. Al prompt dei comandi della shell nel computer Linux, eseguire le operazioni seguenti:

    sudo apt-get install openssh-server g++ gdb make ninja-build rsync zip
    

    È possibile che venga richiesta la password radice per eseguire il sudo comando . In questo caso, immetterla e continuare. Al termine, verranno installati gli strumenti e i servizi necessari.

  2. Assicurarsi che il servizio ssh sia in esecuzione nel computer Linux eseguendo il comando seguente:

    sudo service ssh start
    

    Questo comando avvia il servizio ed esegue il servizio in background, pronto per accettare le connessioni.

Fedora in WSL

Fedora usa il programma di installazione dei pacchetti dnf. Per scaricare g++, gdb, make, rsync, ninja-build e zip, eseguire:

sudo dnf install gcc-g++ gdb rsync ninja-build make zip

Per la sincronizzazione automatica delle intestazioni di Linux con Visual Studio per il supporto di Intellisense sono necessari zip e rsync. Ninja-build è necessario solo per i progetti CMake.

Fedora nei sistemi Linux remoti

Il computer di destinazione che esegue Fedora usa il programma di installazione dei pacchetti dnf. Per scaricare openssh-server, g++, gdb, make, ninja-build, rsync e zip e riavviare il daemon ssh, seguire queste istruzioni. Ninja-build è necessario solo per i progetti CMake.

  1. Al prompt dei comandi della shell nel computer Linux, eseguire le operazioni seguenti:

    sudo dnf install openssh-server gcc-g++ gdb ninja-build make rsync zip
    

    Potrebbe essere richiesto che la password radice esegua il comando sudo. In questo caso, immetterla e continuare. Al termine, verranno installati gli strumenti e i servizi necessari.

  2. Assicurarsi che il servizio ssh sia in esecuzione nel computer Linux eseguendo il comando seguente:

    sudo systemctl start sshd
    

    Questo comando avvia il servizio ed esegue il servizio in background, pronto per accettare le connessioni.

Passaggi successivi

È ora possibile creare o aprire un progetto Linux e configurarlo per l'esecuzione nel sistema di destinazione. Per altre informazioni, vedere: