2 что такое система сборки
Перейти к содержимому

2 что такое система сборки

  • автор:

Что такое «система сборки» во встроенном домене?

Я работаю в области программирования на C, и кто-то спросил меня, какова система сборки моего проекта. Я работаю в STM32CubeIDE, используя | GNU Tools для STM32 | Набор инструментов . Мне не нужно было создавать Makefile для моего проекта, так как он автоматически генерируется IDE. Так что же такое build-system? Имеется в виду, как я строю проект?

Имеет ли изображение ниже какое-либо отношение к системе сборки?

enter image description here

Любая информация будет полезна. Спасибо.

2 ответа

Он спросил вас, как вы строите свой проект. Это make, cmake, VSbuild или что-то еще.

Возможно, вы используете autotools или другую систему генерации проектов.

Поскольку он установлен на «внешний компоновщик» и инструменты GNU, то, вероятно, make — хотя и не обязательно — IDE может реализовать собственное управление, а не явно генерировать и выполнять make-файл.

Если вы используете исключительно IDE для управления и генерации сборки для вас, тогда « STM32CubeIDE with GNU Tools », вероятно, также является разумным ответом, независимо от того, как он на самом деле его реализует. Знание того, какой инструмент он использует под капотом, полезно, например, если вам приходится собирать командную строку для непрерывной интеграции или автоматического выпуска.

Системы сборки

Многие гениальные вещи создаются из лени. Системы сборки облегчают жизнь разработчика.

Время чтения: меньше 5 мин

  1. Кратко
  2. Как понять
  3. Как пользоваться
  4. На практике
    1. Игорь Камышев

    Обновлено 1 декабря 2021

    Кратко

    Бандлер — программа, которая упаковывает сложный проект со многими файлами и внешними зависимостями в один (иногда несколько) файл, который будет отправлен браузеру.

    Самый популярный бандлер — Webpack, он используется в сложных проектах с высокими требованиями к конфигурируемости. Самый простой в использовании — Parcel, он хорошо подходит для небольших проектов без особенных требований.

    Как понять

    Современные проекты могут быть огромными (100 тысяч строк или даже больше), писать такие объёмы кода в одном файле совершенно невозможно. К тому же, часто нужно использовать готовые библиотеки, которые написал кто-то другой. Но, к сожалению, браузеры не очень хорошо поддерживают проекты из многих файлов. Из-за этого были придуманы системы сборки (их ещё называют бандлерами или сборщиками).

    Как пользоваться

    Большинство бандлеров распространяются через npm. Чтобы начать ими пользоваться, достаточно добавить соответствующий пакет.

    Теперь нужно создать HTML-файл, в котором описать относительные пути до JavaScript-файлов, и запустить бандлер. Он сделает всю остальную работу.

    Рядом с этим файлом следует разместить JavaScript-файл:

    Теперь можно запустить бандлер и посмотреть на результат в браузере. Для этого нужно добавить новый скрипт в package . json :

    И запустить его:

    В браузере будет виден HTML, и исполнится JS. Важно заметить, что в JS-файлах теперь можно безболезненно импортировать любые другие файлы — и локальные, и установленные через npm модули. Бандлер найдёт все нужные файлы и упакует в один большой файл, который отправится в браузер.

    На практике

    Игорь Камышев

    Обычно бандлеры, кроме сборки кода, умеют применять к нему трансформации. Например, можно писать приложение на современном JavaScript, а бандлер превратит его в понятный для старых браузеров код. Чаще всего для этой задачи используется Babel. При работе с Parcel Babel включён по умолчанию, и чтобы его настроить, достаточно создать в корне проекта файл . browserslistrc и перечислить в нем поддерживаемые браузеры:

    При такой конфигурации результирующий код будет корректно работать в последних версиях браузеров, в любых версиях, которые занимают больше 1 процента на рынке браузеров.

    Что такое «система сборки» во встроенном домене?

    Я работаю в области встроенного программирования на C, и кто-то спросил меня, какова система сборки моего проекта. Я работаю в STM32CubeIDE, используя | Инструменты GNU для STM32 | набор инструментов. Мне не нужно было создавать Makefile для моего проекта, так как он автоматически генерируется IDE. Так что же такое система сборки? Это относится к тому, как я строю проект?

    Имеет ли изображение ниже какое-либо отношение к системе сборки?

    введите описание изображения здесь

    Любая информация будет полезна. Спасибо.

    Поскольку он настроен на «внешний строитель» и инструменты GNU, то предположительно make — хотя и не обязательно — IDE может реализовать собственное управление, а не явно генерировать и выполнять make-файл.

    Если вы используете исключительно IDE для управления и создания сборки для вас, то « STM32CubeIDE с инструментами GNU », вероятно, также является разумным ответом, независимо от того, как он фактически ее реализует. Знание того, какой инструмент он использует под капотом, полезно, если вам нужно выполнять сборки из командной строки, например, для непрерывной интеграции или автоматического выпуска.

Добавить комментарий

Ваш адрес email не будет опубликован.