Linux 프로젝트 구성Configure a Linux Project

이 항목에서는 Visual Studio Linux 프로젝트를 구성하는 방법을 설명합니다.This topic describes how to configure a Visual Studio Linux project. CMake Linux 프로젝트에 대한 자세한 내용은 Linux CMake 프로젝트 구성을 참조하세요.For information about CMake Linux Projects, see Configure a Linux CMake Project .

일반 설정General settings

Visual Studio를 사용하여 Linux 프로젝트에 대해 다양한 옵션을 구성할 수 있습니다.A variety of options can be configured for a Linux project with Visual Studio. 이러한 옵션을 보려면 프로젝트 > 속성 메뉴를 선택하거나 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 상황에 맞는 메뉴에서 속성을 선택합니다.To view these options, select the Project > Properties menu, or right click on the project in Solution Explorer and select Properties from the context menu. 일반 설정이 나타납니다.The General settings appear.

일반 구성

기본적으로는 실행 파일(.out)은 도구를 사용하여 빌드됩니다.By default, an executable (.out) is built with the tool. 정적 또는 동적 라이브러리를 빌드하거나 기존 메이크파일을 사용하려면 구성 형식 선택을 사용합니다.To build a static or dynamic library, or to use an existing Makefile, use the Configuration Type selection.

원격 설정Remote settings

원격 Linux 컴퓨터와 관련된 설정을 변경하려면 일반 설정에 표시되는 원격 옵션을 구성합니다.To change settings pertaining to the remote Linux computer, configure the remote options that appear in the General settings:

  • 대상 Linux 컴퓨터를 변경하려면 원격 빌드 컴퓨터 항목을 사용합니다.To change the target Linux computer, use the Remote Build Machine entry. 이렇게 하면 이전에 만든 연결 중 하나를 선택할 수 있습니다.This will allow you to select one of the connections created previously. 새 항목을 만들려면 Connecting to Your Remote Linux Computer(원격 Linux 컴퓨터에 연결) 섹션을 참조하세요.To create a new entry, please see the Connecting to Your Remote Linux Computer section.

  • 원격 빌드 루트 디렉터리는 프로젝트가 원격 Linux 컴퓨터에서 빌드되는 루트 위치를 결정합니다.The Remote Build Root Directory determines the root location of where the project is built on the remote Linux computer. 달리 변경하지 않은 경우 기본값은 ~/projects로 설정됩니다.This will default to ~/projects unless changed.

  • 원격 빌드 프로젝트 디렉터리는 원격 Linux 컴퓨터에서 이 특정 프로젝트가 빌드되는 위치입니다.The Remote Build Project Directory is where this specific project will be built on the remote Linux computer. 기본값은 $(RemoteRootDir)/$(ProjectName)이며, 위에 설정된 루트 디렉터리 아래의 현재 프로젝트를 따라 명명된 디렉터리로 확장됩니다.This will default to $(RemoteRootDir)/$(ProjectName), which will expand to a directory named after the current project, under the root directory set above.

참고

프로젝트를 빌드하는 데 사용되는 기본 C 및 C++ 컴파일러 또는 링커 및 보관기를 변경하려면 C/C++ > 일반 섹션 및 링커 > 일반 섹션에서 적절한 항목을 사용합니다.To change the default C and C++ compilers, or the Linker and Archiver used to build the project, use the appropriate entries in the C/C++ > General section and the Linker > General section. 예를 들어 이러한 항목은 GCC 또는 Clang 컴파일러의 특정 버전을 사용하여 설정할 수 있습니다.These could be set to use a certain version of GCC, or even the Clang compiler, for example.

VC++ 디렉터리VC++ directories

기본적으로 Visual Studio에는 Linux 컴퓨터의 모든 시스템 수준 포함 파일이 포함되지 않습니다.By default, Visual Studio does not include any system-level include files from the Linux computer. 예를 들어 /usr/include 디렉터리의 항목은 Visual Studio에 없습니다.For example, items in the /usr/include directory are not present in Visual Studio. 완전한 IntelliSense 지원을 위해서는, 개발 컴퓨터의 일부 위치로 해당 파일을 복사하고 Visual Studio에 이 위치를 가리켜야 합니다.For full IntelliSense support, you will need to copy those files to some location on your development computer and point Visual Studio to this location. 한 가지 방법은 scp(보안 복사)를 사용하여 파일을 복사합니다.One option is to use scp (Secure Copy) to copy the files. Windows 10에서 Bash on Windows(Windows의 Bash)를 사용하여 scp를 실행할 수 있습니다.On Windows 10, you can use Bash on Windows to run scp. 이전 버전의 Windows에서는 PSCP(PuTTY 보안 복사)와 같은 방법을 사용할 수 있습니다.For previous versions of Windows, you could use something like PSCP (PuTTY Secure Copy).

다음과 비슷한 명령을 사용하여 파일을 복사할 수 있습니다.You can copy the files by using a command similar to the following:

scp -r linux_username@remote_host:/usr/include .

물론, 위의 linux_usernameremote_host 값을 자신의 환경에 적절한 값으로 바꾸세요.Of course, replace the linux_username and remote_host values above for what's appropriate in your own environment.

파일이 복사되면 프로젝트 속성의 VC++ 디렉터리 항목을 사용하여 Visual Studio에 방금 복사된 추가 포함 파일을 찾을 수 있는 위치를 알려줍니다.Once the files are copied, use the VC++ Directories item in Project properties to tell Visual Studio where to find the additional include files that were just copied.

VC++ 디렉터리

소스 복사Copy sources

빌드할 때 개발 PC의 소스 파일이 Linux 컴퓨터에 복사되어 해당 컴퓨터에서 컴파일됩니다.When building, the source files on your development PC are copied to the Linux computer and compiled there. 기본적으로 Visual Studio 프로젝트의 모든 소스가 위의 설정에 지정된 위치에 복사됩니다.By default, all sources in the Visual Studio project are copied to the locations set in the settings above. 그러나 추가 소스가 목록에 추가되거나, 소스 복사가 완전히 꺼질 수 있습니다(메이크파일 프로젝트에 대한 기본값).However, additional sources can also be added to the list, or copying sources can be turned off entirely, which is the default for a Makefile project.

  • 복사할 소스가 원격 컴퓨터에 복사되는 소스를 결정합니다.Sources to copy determines which sources are copied to the remote computer. 기본적으로 @(SourcesToCopyRemotely)는 프로젝트의 모든 소스 코드 파일로 설정되지만 이미지와 같은 자산/리소스 파일은 포함하지 않습니다.By default, the @(SourcesToCopyRemotely) defaults to all source code files in the project, but does not include any asset/resource files, such as images.

  • 소스 복사는 원격 컴퓨터에 소스 파일 복사를 사용하거나 사용하지 않기 위해 켜거나 끌 수 있습니다.Copy sources can be turned on and off to enable and disable the copying of source files to the remote computer.

  • 복사할 추가 소스를 통해 원격 시스템에 복사되는 추가 소스 파일을 추가할 수 있습니다.Additional sources to copy allows you to add additional source files which will be copied to the remote system. 세미콜론으로 구분된 목록을 지정하거나 := 구문으로 사용할 로컬 및 원격 이름을 지정할 수 있습니다.You can specify a semi-colon delimited list, or you can use the := syntax to specify a local and remote name to use:

    C:\Projects\ConsoleApplication1\MyFile.cpp:=~/projects/ConsoleApplication1/ADifferentName.cpp;C:\Projects\ConsoleApplication1\MyFile2.cpp:=~/projects/ConsoleApplication1/ADifferentName2.cpp;

빌드 이벤트Build events

원격 컴퓨터에서 모든 컴파일이 수행된 후 몇 가지 추가 빌드 이벤트가 프로젝트 속성의 빌드 이벤트 섹션에 추가되었습니다.Since all compilation is happening on a remote computer, several additional Build Events have been added to the Build Events section in Project Properties. 이들은 원격 빌드 전 이벤트, 원격 링크 전 이벤트빌드 후 이벤트 제거이며, 프로세스의 개별 단계 전 또는 후에 원격 컴퓨터에서 발생합니다.These are Remote Pre-Build Event, Remote Pre-Link Event, and Remote Post-Build Event, and will occur on the remote computer before or after the individual steps in the process.

빌드 이벤트

참고 항목See Also

프로젝트 속성 사용Working with Project Properties
C++ 일반 속성(Linux C++)C++ General Properties (Linux C++)
VC++ 디렉터리(Linux C++)VC++ Directories (Linux C++)
소스 복사 프로젝트 속성(Linux C++)Copy Sources Project Properties (Linux C++)
빌드 이벤트 속성(Linux C++)Build Event Properties (Linux C++)