You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/linux/configure-a-linux-project.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -90,6 +90,9 @@ Since all compilation is happening on a remote computer (or WSL), several additi
90
90
91
91
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.
92
92
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
+
93
96
This functionality depends on the Linux machine having zip installed. You can install zip by using this apt-get command:
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"
4
5
ms.assetid: 56c800a9-3df9-4196-87b2-81adb00e4767
5
6
---
6
-
# General Properties (Linux C++)
7
+
# General properties (Linux C++)
7
8
8
9
::: moniker range="vs-2015"
9
10
@@ -15,17 +16,21 @@ Linux support is available in Visual Studio 2017 and later.
15
16
16
17
Property | Description | Choices
17
18
--- | ---| ---
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-colondelimited 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.
23
24
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.
26
27
Remote Build Root Directory | Specifies a path to a directory on the remote machine or device.
27
28
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)**
0 commit comments