Skip to content

Commit db2e713

Browse files
author
Colin Robertson
authored
Merge pull request #2620 from MicrosoftDocs/FromPublicMasterBranch
Confirm merge from FromPublicMasterBranch to master to sync with https://github.com/MicrosoftDocs/cpp-docs (branch master)
2 parents 017eee5 + 58d021a commit db2e713

2 files changed

Lines changed: 20 additions & 12 deletions

File tree

docs/linux/configure-a-linux-project.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,9 @@ Since all compilation is happening on a remote computer (or WSL), several additi
9090

9191
When you add a new connection in **Connection Manager**, Visual Studio automatically detects the include directories for the compiler on the remote system. Visual Studio then zips up and copies those files to a directory on your local Windows machine. After that, whenever you use that connection in a Visual Studio or CMake project, the headers in those directories are used to provide IntelliSense.
9292

93+
> [!NOTE]
94+
> In Visual Studio 2019 version 16.5 and later, the remote header copy has been optimized. Headers are now copied on-demand when opening a Linux project or configuring CMake for a Linux target. The copy occurs in the background on a per-project basis, based on the project's specified compilers. For more information, see [Improvements to Accuracy and Performance of Linux IntelliSense](https://devblogs.microsoft.com/cppblog/improvements-to-accuracy-and-performance-of-linux-intellisense/).
95+
9396
This functionality depends on the Linux machine having zip installed. You can install zip by using this apt-get command:
9497

9598
```cmd
Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
---
2-
title: "General Properties (Linux C++ Project)| Microsoft Docs"
3-
ms.date: "06/07/2019"
2+
title: "General properties (Linux C++ Project)"
3+
description: "Describes the Linux project properties you can set in Visual Studio on the General properties page."
4+
ms.date: "01/14/2020"
45
ms.assetid: 56c800a9-3df9-4196-87b2-81adb00e4767
56
---
6-
# General Properties (Linux C++)
7+
# General properties (Linux C++)
78

89
::: moniker range="vs-2015"
910

@@ -15,17 +16,21 @@ Linux support is available in Visual Studio 2017 and later.
1516

1617
Property | Description | Choices
1718
--- | ---| ---
18-
Output Directory | Specifies a relative path to the output file directory; can include environment variables.
19-
Intermediate Directory | Specifies a relative path to the intermediate file directory; can include environment variables.
20-
Target Name | Specifies a file name that this project will generate.
21-
Target Extension | Specifies a file extension that this project will generate. (Example: .a)
22-
Extensions to Delete on Clean | Semi-colon delimited wildcard specification for which files in the intermediate directory to delete on clean or rebuild.
19+
Output Directory | Specifies a relative path to the output file directory. It can include environment variables.
20+
Intermediate Directory | Specifies a relative path to the intermediate file directory. It can include environment variables.
21+
Target Name | Specifies the file name that this project generates.
22+
Target Extension | Specifies the file extension (for example, `.a`) that this project generates.
23+
Extensions to Delete on Clean | Semi-colon-delimited wildcard specification for which files in the intermediate directory to delete on clean or rebuild.
2324
Build Log File | Specifies the build log file to write to when build logging is enabled.
24-
Platform Toolset | Specifies the toolset used for building the current configuration; If not set, the default toolset is used
25-
Remote Build Machine | The target machine or device to use for remote build, deploy and debug. **Visual Studio 2019 version 16.1** A different machine for debugging can be specified in the [Debugging](debugging-linux.md) page.
25+
Platform Toolset | Specifies the toolset used for building the current configuration. If not set, the default toolset is used.
26+
Remote Build Machine | The target machine or device to use for remote build, deploy, and debug. **Visual Studio 2019 version 16.1** You can specify a different machine for debugging on the [Debugging](debugging-linux.md) page.
2627
Remote Build Root Directory | Specifies a path to a directory on the remote machine or device.
2728
Remote Build Project Directory | Specifies a path to a directory on the remote machine or device for the project.
28-
Configuration Type | Specifies the type of output this configuration generates. | **Dynamic Library (.so)** - Dynamic Library (.so)<br>**Static library (.a)** - Static Library (.a)<br>**Application (.out)** - Application (.out)<br>**Makefile** - Makefile<br>
29-
Use of STL | Specifies which C++ Standard Library to use for this configuration. | **Shared GNU Standard C++ Library**<br>**Static GNU Standard C++ Library (-static)**<br>
29+
Remote Deploy Directory | **Visual Studio 2019 version 16.1** Specifies the directory path on the remote machine or device to deploy the project.
30+
Remote Copy Include Directories | **Visual Studio 2019 version 16.5** A list of directories to copy recursively from the Linux target. This property affects the remote header copy for IntelliSense, but not the build. It can be used when **IntelliSense Uses Compiler Defaults** is set to false. Use **Additional Include Directories** under the C/C++ General tab to specify additional include directories to use for both IntelliSense and build.
31+
Remote Copy Exclude Directories | **Visual Studio 2019 version 16.5** A list of directories *not* to copy from the Linux target. Usually, this property is used to remove subdirectories of the include directories.
32+
IntelliSense Uses Compiler Defaults | **Visual Studio 2019 version 16.5** Whether to query the compiler referenced by this project for its default list of include locations. These locations are automatically added to the list of remote directories to copy. Only set this property to false if the compiler doesn't support gcc-like parameters. Both gcc and clang compilers support queries for the include directories (for example, `g++ -x c++ -E -v -std=c++11`).
33+
Configuration Type | Specifies the type of output this configuration generates. | **Dynamic Library (.so)**<br/>**Static library (.a)**<br/>**Application (.out)**<br/>**Makefile**
34+
Use of STL | Specifies which C++ Standard Library to use for this configuration. | **Shared GNU Standard C++ Library**<br/>**Static GNU Standard C++ Library (-static)**
3035

3136
::: moniker-end

0 commit comments

Comments
 (0)