Visual studio linux makefile

Create a Linux MSBuild C++ project in Visual Studio

Linux projects are available in Visual Studio 2017 and later.

First, make sure you have the Linux Development Workload for Visual Studio installed. For more information, see Download, install, and setup the Linux workload.

For cross-platform compilation, we recommend using CMake. CMake support is more complete in Visual Studio 2019. If CMake isn’t an option, and you have an existing Windows Visual Studio solution that you would like to extend to compile for Linux, you can add a Visual Studio Linux project to the Windows solution, along with a Shared Items project. Put the code that is shared between both platforms in the Shared Items project, and add a reference to that project from the Windows and Linux projects.

To create a new Linux project

To create a new Linux project in Visual Studio 2017, follow these steps:

Select File > New Project in Visual Studio, or press Ctrl + Shift + N.

Select the Visual C++ > Cross Platform > Linux node, and then select the project type to create. Enter a Name and Location, and choose OK.

Cross Platform > Linux selected, all of the project types called out, and the Name and Location text boxes also called out.» data-linktype=»relative-path»>

Project Type Description
Blink (Raspberry) Project targeted for a Raspberry Pi device, with sample code that blinks an LED
Console Application (Linux) Project targeted for any Linux computer, with sample code that outputs text to the console
Empty Project (Linux) Project targeted for any Linux computer, with no sample code
Makefile Project (Linux) Project targeted for any Linux computer, built using a standard Makefile build system

First, make sure you have the Linux Development Workload for Visual Studio installed. For more information, see Download, install, and set up the Linux workload.

When you create a new C++ project for Linux in Visual Studio, you can choose to create a Visual Studio project or a CMake project. This article describes how to create a Visual Studio project. In general, for new projects that might include open-source code or you intend to compile for cross-platform development, we recommend you use CMake with Visual Studio. With a CMake project, you can build and debug the same project on both Windows and Linux. For more information, see Create and configure a Linux CMake Project.

If you have an existing Windows Visual Studio solution that you would like to extend to compile for Linux, and CMake isn’t an option, then you can add a Visual Studio Linux project to the Windows solution, along with a Shared Items project. Put the code that is shared between both platforms in the Shared Items project, and add a reference to that project from the Windows and Linux projects.

Create a new Linux project

To create a new Linux project in Visual Studio 2019, follow these steps:

Select File > New Project in Visual Studio, or press Ctrl + Shift + N. The Create a new project dialog appears.

In the Search for templates textbox, enter Linux to list the available templates for Linux projects.

Select the project type to create, for example Console Application, and then choose Next. Enter a Name and Location, and choose Create.

Источник

Настройка проекта Linux CMake в Visual Studio

Поддержка Linux реализована в Visual Studio версии 2017 и выше. Чтобы увидеть документацию для этих версий, установите в расположенном над содержанием раскрывающемся списке Версия пункт Visual Studio 2017 или Visual Studio 2019.

В этой статье описывается добавление конфигурации Linux в проекте CMake, предназначенном как для удаленной системы Linux, так и для подсистемы Windows для Linux (WSL). Это продолжение серии, которая началась со статьи Создание и настройка проекта Linux CMake. Если используется MSBuild, ознакомьтесь со статьей Настройка проекта Linux.

Добавление конфигурации Linux

Конфигурацию можно использовать для различных платформ (Windows, WSL, удаленных систем) с одним и тем же исходным кодом. Конфигурация также используется для установки компиляторов, передачи переменных среды и настройки способа вызова CMake. В файле CMakeSettings.json задаются некоторые или все свойства, перечисленные в статье Настройка параметров сборки CMake, а также дополнительные свойства, определяющие параметры сборки на удаленном компьютере Linux.

Чтобы изменить параметры CMake по умолчанию в Visual Studio 2017, в главном меню последовательно выберите CMake > Изменить параметры CMake > CMakeLists.txt. Или же щелкните правой кнопкой мыши файл CMakeLists.txt в Обозревателе решений и выберите пункт Изменить параметры CMake. Затем Visual Studio создает новый файл CMakeSettings.json в корневой папке проекта. Чтобы внести изменения, откройте файл и измените его напрямую. Дополнительные сведения см. в статье Настраиваемые параметры CMake.

Конфигурация по умолчанию для Linux-Debug в Visual Studio 2017 (а также для Visual Studio 2019 версии 16.0) выглядит следующим образом:

Чтобы изменить параметры CMake по умолчанию в Visual Studio 2019, в главной панели инструментов откройте раскрывающийся список Конфигурация и выберите Управление конфигурациями.

Откроется Редактор параметров CMake, в котором можно изменить файл CMakeSettings.json в корневой папке проекта. Вы также можете открыть файл в помощью редактора JSON, нажав кнопку Изменить JSON в редакторе. Дополнительные сведения см. в статье Настраиваемые параметры CMake.

Конфигурация Linux-Debug по умолчанию в Visual Studio 2019 версии 16.1 и более поздних версиях представлена ниже:

В Visual Studio 2019 версии 16.6 или выше Ninja является генератором по умолчанию для конфигураций, предназначенных для удаленных систем или WSL, в отличие от файлов makefile в Unix. Дополнительные сведения см. в публикации блога команды разработчиков C++.

Дополнительные сведения об этих параметрах см. в разделе документации по CMakeSettings.json.

При выполнении сборки:

  • Если целевая система предназначена для удаленной системы, Visual Studio по умолчанию выбирает первую удаленную систему в списке в разделе Инструменты >Параметры >Кроссплатформенные >Диспетчер подключений для целевых объектов.
  • Если ни одно удаленное подключение не будет найдено, вам будет предложено создать его. В этом разделе предполагается, что вы прочитали статью Подключение к удаленному компьютеру Linux.

Выбор целевого объекта Linux

Когда вы открываете папку проекта CMake, Visual Studio выполняет синтаксический анализ файла CMakeLists.txt и задает целевой объект Windows x86-Debug. Чтобы использовать удаленную систему Linux, измените параметры проекта в соответствии с используемым компилятором Linux. Например, если вы используете GCC в Linux и выполняете компиляцию с отладочной информацией, выберите следующее: Linux-GCC-Debug или Linux-GCC-Release.

После выбора целевого удаленного объекта Linux ваш источник будет скопирован в удаленную систему.

Когда вы выберете целевой объект, CMake автоматически выполнится в системе Linux, чтобы создать кэш CMake для проекта:

Использование подсистемы Windows для Linux

Если вы намерены использовать подсистему Windows для Linux (WSL), вам не нужно добавлять удаленное подключение.

Чтобы настроить использование подсистемы WSL, выберите Управление конфигурациями в раскрывающемся меню конфигураций на главной панели инструментов:

Откроется окно CMakeSettings.json.

Щелкните Добавить конфигурацию (зеленая кнопка «+») и выберите Linux-GCC-Debug или Linux-GCC-Release, если вы используете GCC. Если используется набор инструментов Clang/LLVM, выберите один из вариантов Clang. Нажмите Выбрать и нажмите клавиши CTRL+S, чтобы сохранить конфигурацию.

Visual Studio 2019 версии 16.1. Если вы планируете использовать WSL, Visual Studio не требуется копировать исходные файлы и поддерживать две синхронные копии вашего дерева сборки, так как компилятор в Linux имеет прямой доступ к исходным файлам в подключенной файловой системе Windows.

IntelliSense

Для правильной работы C++ IntelliSense требуется доступ к заголовкам C++, на которые ссылаются исходные файлы C++. Visual Studio автоматически использует заголовки, на которые ссылается проект CMake из Linux в Windows, чтобы обеспечить полную функциональность технологии IntelliSense. Подробнее см. в разделе IntelliSense для удаленных заголовков.

Настройка языкового стандарта

Языковые параметры Visual Studio не распространяются на целевые объекты Linux, так как Visual Studio не управляет установленными пакетами и не настраивает их. Сообщения, отображаемые в окне Вывод, например ошибки сборки, отображаются с использованием языка и языкового стандарта целевого объекта Linux. Вам потребуется настроить целевые объекты Linux для требуемого языкового стандарта.

Дополнительные параметры

Используйте следующие параметры, чтобы выполнять команды в системе Linux до и после сборки, а также до создания CMake. Они могут быть любой командой, допустимой на удаленной системе. Выходные данные передаются обратно в Visual Studio.

Источник

Создание проекта makefile на C++

Объект makefile представляет собой текстовый файл с инструкциями по компиляции и компоновке (или сборке) некоторого набора файлов исходного кода C++. Программа make считывает файл makefile и вызывает компилятор, компоновщик и другие программы для создания исполняемого файла. Реализация make, созданная корпорацией Майкрософт, носит имя NMAKE.

Если у вас есть существующий проект Makefile, который вы хотите развивать и (или) отлаживать в интегрированной среде разработки Visual Studio, у вас есть следующие варианты.

  • Создайте в Visual Studio проект makefile, который использует существующий файл makefile для настройки файла VCXPROJ, используемого средой Visual Studio для IntelliSense. (у вас не будет всех функций интегрированной среды разработки, которые вы получаете с помощью собственного проекта MSBuild.) См. раздел Создание проекта Makefile ниже.
  • Используйте мастер создания нового проекта из существующих файлов кода, чтобы создать собственный проект MSBuild из исходного кода. Исходный файл makefile после этого использоваться не будет. Дополнительные сведения см. в разделе Практическое руководство. Создание проекта C++ из существующего кода.
  • Visual Studio 2017 и более поздних версий: используйте функцию » открыть папку » для изменения и сборки проекта makefile без участия в системе MSBuild. Дополнительные сведения см. в статье Проекты «Открыть папку» для C++.
  • Visual Studio 2019 и более поздних версий: создайте проект UNIX makefile для Linux.

Создание проекта makefile с использованием шаблона проекта makefile

В Visual Studio 2017 и более поздних версиях шаблон проекта Makefile доступен, если установлена рабочая нагрузка разработки классических приложений на C++.

Используйте мастер, чтобы указать команды и среду, используемые файлом makefile. Затем этот проект можно использовать для сборки кода в Visual Studio.

По умолчанию проект makefile не отображает в обозревателе решений никаких файлов. Проект makefile задает параметры сборки, которые показаны на странице свойств проекта.

Выходной файл, который задается в проекте, не влияет на имя, которое формирует скрипт построения; он указывает только на намерения. Файл makefile по-прежнему управляет процессом сборки и указывает ее целевые объекты.

Создание проекта makefile в Visual Studio 2019

в главном меню Visual Studio выберите файл > создать > Project и введите в поле поиска «makefile». Или же откройте диалоговое окно Новый проект, разверните узел Visual C++ > Общие (Visual Studio 2015) или Прочие (Visual Studio 2017) и выберите один из двух вариантов в зависимости от того, предназначен ли проект для Windows или Linux.

только Windows. на странице отладочная конфигурация Параметры предоставьте сведения о команде, выходе, очистке и перестроении для сборок отладки и розничной торговли. Чтобы указать другие параметры для конфигурации выпуска, нажмите кнопку Далее.

Нажмите кнопку Готово, чтобы закрыть диалоговое окно и открыть созданный проект в обозревателе решений.

Создание проекта makefile в Visual Studio 2015 или Visual Studio 2017

На начальной странице Visual Studio введите строку «makefile» в поле поиска Новый проект. Или же откройте диалоговое окно Новый проект, разверните узел Visual C++ > Общие (Visual Studio 2015) или Прочие (Visual Studio 2017) и в области шаблонов выберите Проект Makefile, чтобы открыть мастер проектов.

На странице Параметры приложения предоставьте сведения о команде, выводе, удалении и перестроении для отладочной и окончательной сборок.

Нажмите кнопку Готово, чтобы закрыть мастер и открыть вновь созданный проект в обозревателе решений.

На этой странице свойств можно просматривать и изменять свойства проекта. Сведения об отображении страницы свойств см. в статье Настройка компилятора C++ и свойств сборки в Visual Studio.

Мастер проекта makefile

Создав проект makefile, вы можете просматривать и изменять каждый из следующих параметров на странице Nmake свойств проекта.

Командная строка сборки: Задает командную строку, которая будет запускаться при выборе пользователем сборки в меню «сборка». Отображается в поле «Командная строка для сборки» на странице «Nmake» свойств проекта.

Выходные данные: Указывает имя файла, который будет содержать выходные данные для командной строки. По умолчанию этот параметр основан на имени проекта. Отображается в поле «Вывод» на странице «Nmake» свойств проекта.

Команды очистки: Задает командную строку, выполняемую при выборе пользователем команды Очистить в меню Сборка. Отображается в поле «Командная строка для очистки» на странице «Nmake» свойств проекта.

Командная строка перестроения: Задает командную строку для запуска, когда пользователь выбирает перестроение в меню «сборка». Отображается в поле «Командная строка для перестроения всех файлов» на странице «Nmake» свойств проекта.

Практическое руководство. Использование IntelliSense для проекта Makefile

IntelliSense не работает в проектах makefile, если определенные параметры проекта или компилятора заданы неправильно. Чтобы настроить проекты makefile для правильной работы IntelliSense, выполните указанные ниже действия.

Откройте диалоговое окно Страницы свойств. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.

Откройте страницу свойств Свойства > NMAKE .

Измените свойства в разделе IntelliSense соответствующим образом:

Задайте свойство Определения препроцессора, чтобы определить символы препроцессора в проекте makefile. Дополнительные сведения см. в разделе /D (определения препроцессора).

Задайте свойство Путь поиска включаемых файлов, чтобы указать список каталогов, где компилятор будет производить поиск для разрешения ссылок на файлы, передаваемых в директивы препроцессора в новом проекте makefile. Дополнительные сведения см. в разделе /I (дополнительные каталоги включения).

Для проектов, созданных с использованием CL.EXE из командного окна, задайте переменную среды INCLUDE, чтобы указать каталоги, где компилятор будет производить поиск для разрешения ссылок на файлы, передаваемых в директивы препроцессора в новом проекте makefile.

Задайте свойство Принудительно включаемые файлы, чтобы указать файлы заголовков, обрабатываемые при сборке проекта makefile. Дополнительные сведения см. в разделе /FI (имя принудительно включаемого файла).

Задайте свойство Путь поиска сборок, чтобы указать список каталогов, где компилятор будет производить поиск для разрешения ссылок на сборки .NET в проекте. Дополнительные сведения см. в разделе /AI (указание каталогов метаданных).

Задайте свойство Обязательно используемые сборки, чтобы указать, какие сборки .NET обрабатываются при сборке проекта makefile. Дополнительные сведения см. в разделе /FU (именование файла с принудительно используемым атрибутом #using).

Задайте свойство Дополнительные параметры, чтобы указать дополнительные параметры компилятора, которые должны использоваться IntelliSense при анализе файлов C++.

Нажмите кнопку ОК, чтобы закрыть окно страниц свойств.

Используйте команду Сохранить все, чтобы сохранить измененные параметры проекта.

При следующем открытии проекта makefile в среде разработки Visual Studio запустите команду Очистить решение, а затем — команду Собрать решение для проекта makefile. Технология IntelliSense должна работать в интегрированной среде разработки правильно.

Источник

Читайте также:  Планшет asus установка windows
Оцените статью