Windows build tools что это



Настраиваем бесплатную сборку для написания и отладки программ под микроконтроллеры на основе ядра ARM под Windows 10

Идея написать статью (которая войдет в цикл статей для новичков, остро жаждущих создавать что-то на микроконтроллерах при почти нулевых знаниях в области программирования в принципе) пришла мне после того, как мне пришлось немного отвлечься от своих основных дел, чтобы помочь другу настроить рабочую среду для написания софта под его небольшой домашний проект на основе board-а с stm32f103 на борту. Я рассчитывал, что это займет около получаса, максимум час, но ноутбук друга был на Windows 10 x64, что для меня уже непривычно (сам работаю в Ubuntu). По итогу мы потратили практически 8 часов на настройку и создание простого проекта, борясь с многими не очевидными вещами.

Параллельно с этим мне пришлось подробно объяснять, какой элемент сборки для чего нужен, а так же, как эти элементы взаимодействуют между собой, поскольку друг до этого никогда ранее с микроконтроллерами не сталкивался (от слова «видел Arduino в магазине»).

Данный материал призван помочь начинающим быстро и без проблем настроить полностью бесплатную инфраструктуру для работы с микроконтроллерами, а так же понять, каким образом происходит сборка итогового бинарного файла. Производитель и модель микроконтроллера на этапе настройки этой инфраструктуры неважны. Главное, чтобы в его основе лежало ядро ARM.

Оглавление

  1. Постановка задачи.
  2. Выбор программных средств реализации.
  3. Ставим Eclipse Neon 3.
    • Скачиваем установщик Eclipse.
    • Устанавливаем JRE.
    • Устанавливаем Eclipse.
    • Устанавливаем в Eclipse плагин GNU ARM Eclipse.
    • Патчим JRE (на случай появления ошибки при установке плагина).
    • Устанавливаем GNU ARM Eclipse Windows Build Tools.
  4. Скачиваем и устанавливаем GNU ARM Embedded Toolchain.
  5. Устанавливаем OpenOCD.
  6. Устанавливаем драйвера на st-link v2.
  7. Разбираемся, как все это работает.
  8. Заключение.

Постановка задачи

Выбор программных средств реализации

Для решения поставленных задач нам потребуются следующие программные продукты:

  1. Eclipse Neon 3 для C/C++ (самая последняя версия на момент написания статьи). Будет использована нами как IDE (текстовый редактор с удобным авто дополнением + удобства по взаимодействию со средствами отладки), в которой мы будем писать код.
  2. JRE (на момент написания статьи, самая последняя версия 1.8.0). Без него не запустится установщик Eclipse (ну и сам Eclipse).
  3. GNU ARM Embedded Toolchain (на момент написания статьи, самой последней версией был 5_4-2016q3-20160926). Это комплекс нужных нам программных решений (таких как компилятор C кода «gcc», C++ кода «g++», линкер — «ld», средство загрузки и отладки финальной прошивки — «gdb» и многие другие), благодаря которым мы получим из наших файлов с исходным кодом файл с разрешением «.elf», представляющий из себя бинарный файл прошивки микроконтроллера, который в последствии будет загружен в микроконтроллер (об этом ниже).
  4. OpenOCD 0.10.0. С помощью него мы будем загружать наш «.elf» файл программы в микроконтроллер (на деле, OpenOCD предоставляет связь между gdb из указанного выше toolchain-а и отладчиком).

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

Ставим Eclipse Neon 3

Как говорилось выше, для того, чтобы писать код, нам нужен текстовый редактор, в котором было бы удобно писать (различные методы авто-дополнения, поиска по проекту, навигация по файлам и т.д). А после того, как мы написали код, было бы неплохо, чтобы его компиляция, сборка и исполнение — были бы делом пары комбинаций клавиш (или кликов мышью, кому как удобно).
Для этих целей я использую Eclipse. Помимо редактора, он представляет еще возможность подключения различных расширений, которые значительно упрощают жизнь разработчика, сводя всю рутинную работу (сборку, компоновку, загрузку программы в контроллер) к паре кликов/нажатий.

Источник

Инструменты сборки для Visual Studio 2019 v16.11.2

Описание

Build Tools for Visual Studio — это инструмент для создания собственных и управляемых приложений на основе MSBuild без необходимости установки Visual Studio. При установке этой программы у вас есть возможность установить компилятор C ++ и библиотеки, такие как поддержка MFC, ATL и C ++ / CLI, а также ядра .NET и .net.

Инструмент был представлен в 2015 году как Visual C ++ Tools, с преимуществом возможности компилировать приложения C ++ без установки дополнительных накладных расходов, включая тяжелую среду разработки Visual Studio. Позднее инструмент был расширен за счет добавления дополнительных компонентов, таких как ATL, MFC, NET, среда разработки C ++ / CLI и многих Windows SDK. С помощью этого инструмента последняя версия установщика MSBuild размещается независимо, так что вы можете создавать установочные пакеты .NET.

Для Visual Studio 2019 выпущена новая версия Build Tools, в которой используется новый установщик для доступа к MSBuild как для управляемых, так и для неуправляемых приложений. Этот установщик объединяет как Visual C ++ Build Tools, так и Microsoft Build Tools в единую версию.

По умолчанию все необходимые компоненты MSBuild как для управляемых, так и для собственных приложений устанавливаются с помощью средств сборки Visual Studio, которые включают такие вещи, как командная строка MSBuild для создания программ, а также другие дополнительные элементы, такие как средства сборки Visual C ++, у которых есть параметры. Предоставляет дополнительные возможности для разработчиков на C ++. Эти параметры очень похожи на те, с которыми вы столкнулись при установке Visual Studio 2017, настольной версии C ++. Обратите внимание, что пакет Build Tools for Visual Studio 2017 также включает поддержку CMake, которую можно использовать для автоматизации процесса установки приложения.

Системные требования для сборки инструментов для Visual Studio:

Поддерживаемые операционные системы: Windows 7even или новее / Windows Server 2012 R2 или 2016

Operating system:
Windows 10 version 1507 or higher: Home, Professional, for educational institutions and Corporate (release with long-term maintenance is not supported)
Windows Server 2016: Standard and Datacenter
Windows 8.1 (with update 2919355): Basic, Professional, and Corporate
Windows Server 2012 R2 (with update 2919355): Essentials, Standard, Datacenter
Windows 7 SP1 (with the latest Windows Updates): Home Enhanced, Professional, Enterprise, Maximum
Equipment:
Hard disk space: 1 GB to 10 GB, depending on the installed components.

Источник

This version has been deprecated

Node.js now includes build tools for Windows. You probably no longer need this tool. See https://github.com/felixrieseberg/windows-build-tools for details.

windows-build-tools

On Windows? Want to compile native Node modules? Install the build tools with this one-liner. Start PowerShell as Administrator and run:

Or, if you are using Yarn:

After installation, npm will automatically execute this module, which downloads and installs Visual C++ Build Tools, provided free of charge by Microsoft. These tools are required to compile popular native modules. If not already installed, it will also install Python 2.7, configuring your machine and npm appropriately.

рџ’Ў [Windows Vista / 7 only] requires .NET Framework 4.5.1 (Currently not installed automatically by this package)

Both installations are conflict-free, meaning that they do not mess with existing installations of Visual Studio, C++ Build Tools, or Python. If you see anything that indicates otherwise, please file a bug.

Visual Studio 2017 vs Visual Studio 2015

This module is capable of installing either the build tools from Visual Studio 2017 or Visual Studio 2015. Since Node’s underlying build tools still don’t fully support 2017, you might have a better experience with 2015 — even if it sounds a bit outdated. On the other hand, if you are only trying to compile a certain set of modules, the 2017 build tools are smaller and install a bit quicker.

By default, this tool will install the 2015 build tools. To change that, run this script with the —vs2017 parameter.

  • —offline-installers : Path to a folder with already downloaded installers. See
  • —python-mirror : Use a given mirror to download Python (like —python_mirror=https://npm.taobao.org/mirrors/python/ ). You can alternatively set a PYTHON_MIRROR environment variable.
  • —proxy : Use a given proxy. You can alternatively set a PROXY environment variable.
  • —debug : Be extra verbose in the logger output. Equal to setting the environment variable DEBUG to * .
  • —strict-ssl : Enables «Strict SSL» mode. Defaults to false.
  • —resume : By default, windows-build-tools will resume aborted downloads. Set to false to disable.
  • —sockets : Specifies the number of http sockets to use at once (this controls concurrency). Defaults to infinity.
  • —vcc-build-tools-parameters : Specifies additional parameters for the Visual C++ Build Tools 2015. See below for more detailed usage instructions.
  • —silent : The script will not output any information.
  • —vs2017 : Install the Visual Studio 2017 Build Tools instead of the Visual Studio 2015 ones.
  • —dry-run-only : Don’t actually do anything, just print what the script would have done.

Supplying Parameters to the VCC Build Tools

You can pass additional parameters directly to the VCC Build Tools installer. This tool does not check if the parameters make sense — passing incorrect parameters might break the whole installation.

Supply parameters to windows-build-tools as a JSON array. Here’s quick example (note the double quotes):

Visual Studio 2015 Parameters

  • /AdminFile : Specifies the installation control file.
  • /CreateAdminFile : Specifies the location to create a control file that can then be used
  • /CustomInstallPath :

Set Custom install location.

  • /ForceRestart : Always restart the system after installation.
  • /Full : Install all product features.
  • /InstallSelectableItems : Choose which selectable item(s) to be installed. -selectable item to be installed, just pass in this switch without any value.
  • /Layout : Create a copy of the media in specified folder.
  • /NoRefresh : Prevent setup checking for updates from the internet.
  • /NoRestart : Do not restart during or after installation.
  • /NoWeb : Prevent setup downloading from the internet.
  • /Passive : Display progress but do not wait for user input.
  • /ProductKey : Set custom product key (no dashes).
  • /PromptRestart : Prompt the user before restarting the system.
  • /Repair : Repair the product.
  • /Uninstall : Uninstall the product.
  • /Uninstall /Force : Uninstall the product and features shared with other products.
  • Visual Studio 2017 Parameters

    If you run windows-build-tools with —vs2017 , the available parameters are documented here.

    By default, windows-build-tools will download the latest installers from Microsoft each time it’s installed. Alternatively, you can prepare a folder that contains installers. They need to have their original names:

    • Visual Studio Build Tools: vs_BuildTools.exe or BuildTools_Full.exe
    • Python: python-2.7.14.amd64.msi or python-2.7.14.msi

    Then, run windows-build-tools with the —offline-installers argument:

    This package currently only handles the most common use case, none of the edge cases. If you encounter errors, we’d greatly appreciate error reports (and even pull requests). This is currently tested on Windows 10.

    • windows-build-tools 4.0 and up require at least Node v8.
    • windows-build-tools 3.0 and up require at least Node v6.
    • windows-build-tools 1.0 and up require at least Node v4.

    Where is Python installed?

    It’s saved under %USERPROFILE%\.windows-build-tools\python27 .

    Installing as a Non-Administrator

    windows-build-tools works best if installed from an account with administrative rights. However, thanks to @brucejo75, the following steps can be taken to install to a different user account:

    1. From your non-admin account (e.g. ) run cmd.exe as administrator.
    2. Set the following environment variables in the new command shell:

    Ensure that the variables passed match your location of npm’s roaming data and the location of user profiles on your machine. For , substitute the name of the account you want to install windows-build-tools for. For more information, see the npm config set prefix description here.

    1. Run npm install -g —production windows-build-tools

    Examples of Modules Supported

    In theory, windows-build-tools supports all pure C++ addons for Node.js (and virtually everything else that requires a native compiler toolchain to be installed on your machine).

    To ensure that that’s true, we take a fresh Windows 10 installation, add windows-build-tools , and ensure that the most popular native Node addons compile from source. Those are: node-sass, bcrypt, sqlite3, serialport, websocket, deasync, grpc, canvas, sharp, hiredis, leveldown, nodegit, zqm, ffi, libxmljs, iconv, ref, sleep, microtime, couchbase, bignum, kerberos, and ursa.

    The Python installation was made possible by Ali Hajimirza, who kindly wrestled with Python’s MSIs until they surrendered.

    Copyright (C) 2018 Felix Rieseberg. Licensed MIT. For more details, please see LICENSE.

    Источник

    This package has been deprecated

    Node.js now includes build tools for Windows. You probably no longer need this tool. See https://github.com/felixrieseberg/windows-build-tools for details.

    windows-build-tools

    On Windows? Want to compile native Node modules? Install the build tools with this one-liner. Start PowerShell as Administrator and run:

    Or, if you are using Yarn:

    After installation, npm will automatically execute this module, which downloads and installs Visual C++ Build Tools, provided free of charge for most users by Microsoft (as part of Visual Studio Community, please consult the license to determine whether or not you’re eligible). These tools are required to compile popular native modules. If not already installed, it will also install Python 2.7, configuring your machine and npm appropriately.

    рџ’Ў [Windows Vista / 7 only] requires .NET Framework 4.5.1 (Currently not installed automatically by this package)

    Both installations are conflict-free, meaning that they do not mess with existing installations of Visual Studio, C++ Build Tools, or Python. If you see anything that indicates otherwise, please file a bug.

    Visual Studio 2017 vs Visual Studio 2015

    This module is capable of installing either the build tools from Visual Studio 2017 or Visual Studio 2015.

    By default, this tool will install the 2017 build tools. To change that, run this script with the —vs2015 parameter.

    • —offline-installers : Path to a folder with already downloaded installers. See
    • —python-mirror : Use a given mirror to download Python (like —python_mirror=https://npm.taobao.org/mirrors/python/ ). You can alternatively set a PYTHON_MIRROR environment variable.
    • —proxy : Use a given proxy. You can alternatively set a PROXY environment variable.
    • —debug : Be extra verbose in the logger output. Equal to setting the environment variable DEBUG to * .
    • —strict-ssl : Enables «Strict SSL» mode. Defaults to false.
    • —resume : By default, windows-build-tools will resume aborted downloads. Set to false to disable.
    • —sockets : Specifies the number of http sockets to use at once (this controls concurrency). Defaults to infinity.
    • —vcc-build-tools-parameters : Specifies additional parameters for the Visual C++ Build Tools 2015. See below for more detailed usage instructions.
    • —silent : The script will not output any information.
    • —vs2015 : Install the Visual Studio 2015 Build Tools instead of the Visual Studio 2017 ones.
    • —dry-run-only : Don’t actually do anything, just print what the script would have done.
    • —include-arm64-tools : Include the optional Visual Studio components required to build binaries for ARM64 Windows. Only available with the 2017 and newer build tools and Node.js v12 and up.

    Supplying Parameters to the VCC Build Tools

    You can pass additional parameters directly to the VCC Build Tools installer. This tool does not check if the parameters make sense — passing incorrect parameters might break the whole installation.

    Supply parameters to windows-build-tools as a JSON array. Here’s quick example (note the double quotes):

    Visual Studio 2015 Parameters

    If you run windows-build-tools with —vs2015 , these parameters are available:

    • /AdminFile : Specifies the installation control file.
    • /CreateAdminFile : Specifies the location to create a control file that can then be used
    • /CustomInstallPath :

    Set Custom install location.

  • /ForceRestart : Always restart the system after installation.
  • /Full : Install all product features.
  • /InstallSelectableItems : Choose which selectable item(s) to be installed. -selectable item to be installed, just pass in this switch without any value.
  • /Layout : Create a copy of the media in specified folder.
  • /NoRefresh : Prevent setup checking for updates from the internet.
  • /NoRestart : Do not restart during or after installation.
  • /NoWeb : Prevent setup downloading from the internet.
  • /Passive : Display progress but do not wait for user input.
  • /ProductKey : Set custom product key (no dashes).
  • /PromptRestart : Prompt the user before restarting the system.
  • /Repair : Repair the product.
  • /Uninstall : Uninstall the product.
  • /Uninstall /Force : Uninstall the product and features shared with other products.
  • Visual Studio 2017 Parameters

    The available parameters are documented here.

    By default, windows-build-tools will download the latest installers from Microsoft each time it’s installed. Alternatively, you can prepare a folder that contains installers. They need to have their original names:

    • Visual Studio Build Tools: vs_BuildTools.exe or BuildTools_Full.exe
    • Python: python-2.7.15.amd64.msi or python-2.7.15.msi

    Then, run windows-build-tools with the —offline-installers argument:

    This package currently only handles the most common use case, none of the edge cases. If you encounter errors, we’d greatly appreciate error reports (and even pull requests). This is currently tested on Windows 10.

    • windows-build-tools 4.0 and up require at least Node v8.
    • windows-build-tools 3.0 and up require at least Node v6.
    • windows-build-tools 1.0 and up require at least Node v4.

    Where is Python installed?

    It’s saved under %USERPROFILE%\.windows-build-tools\python27 .

    Installing as a Non-Administrator

    windows-build-tools works best if installed from an account with administrative rights. However, thanks to @brucejo75, the following steps can be taken to install to a different user account:

    1. From your non-admin account (e.g. ) run cmd.exe as administrator.
    2. Set the following environment variables in the new command shell:

    Ensure that the variables passed match your location of npm’s roaming data and the location of user profiles on your machine. For , substitute the name of the account you want to install windows-build-tools for. For more information, see the npm config set prefix description here.

    1. Run npm install -g windows-build-tools

    Examples of Modules Supported

    In theory, windows-build-tools supports all pure C++ addons for Node.js (and virtually everything else that requires a native compiler toolchain to be installed on your machine).

    To ensure that that’s true, we take a fresh Windows 10 installation, add windows-build-tools , and ensure that the most popular native Node addons compile from source. Those are: node-sass, bcrypt, sqlite3, serialport, websocket, deasync, grpc, canvas, sharp, hiredis, leveldown, nodegit, zqm, ffi, libxmljs, iconv, ref, sleep, microtime, couchbase, bignum, kerberos, and ursa.

    The Python installation was made possible by Ali Hajimirza, who kindly wrestled with Python’s MSIs until they surrendered. For details regarding the license agreements applicable to Python, see History and License 2.x and 3.x.

    Use of Microsoft software is subject to the terms of the corresponding license agreements. For details regarding the license agreements applicable to Visual Studio products, refer to their License Directory page. (See also this discussion for the gist of it.)

    Copyright (C) 2018 Felix Rieseberg. Licensed MIT. For more details, please see LICENSE. This license applies to this package only, not to its dependencies or the 3rd party software that it installs.

    Источник

    You may also like...