Repolode
SCons

SCons/scons

SCons — инструмент сборки на Python: он определяет, что нужно пересобрать, и запускает необходимые команды.

Звёзды
2,438
Форки
364
Открытые issues
647
Последний коммит
4 дня назад

Что это?

SCons управляет сборкой программного обеспечения и других продуктов, например документации: определяет, какие компоненты устарели, и запускает команды для их пересборки. Файлы конфигурации сборки — это обычные скрипты Python, поэтому логику сборки можно описывать на полноценном языке программирования, а не в отдельном предметно-ориентированном синтаксисе.

Анализ зависимостей для C, C++ и FORTRAN встроен, а сам инструмент включает средства сборки для D, Java, Yacc, Lex, Qt, SWIG, TeX и LaTeX. Для других языков и типов файлов можно добавлять собственные сканеры и средства сборки. По умолчанию изменения обнаруживаются с помощью криптографических хешей; при желании можно использовать временные метки. Также поддерживаются параллельная сборка и общий кэш сборки.

SCons предназначен для кроссплатформенной сборки и работает в Linux, других POSIX-системах, Windows, macOS и OS/2. Для установки используется pip; требуется Python версии 3.9 или выше.

Ключевые возможности

  • 01Конфигурация сборки задаётся скриптами Python, а не на пользовательском DSL.
  • 02Встроенный анализ зависимостей для C, C++ и FORTRAN с возможностью расширять набор сканеров.
  • 03Встроенные средства сборки для D, Java, Qt, SWIG, Yacc, Lex, TeX и LaTeX.
  • 04Обнаружение изменений по криптографическим хешам; при желании можно использовать временные метки.
  • 05Параллельная сборка и общий кэш сборки.
  • 06Кроссплатформенная поддержка, включая Windows, Linux, macOS и другие POSIX-системы.

Сценарии использования

  • Сборка проектов на C или C++, которым нужно автоматически отслеживать зависимости от заголовочных файлов.
  • Создание единого скрипта сборки, который координирует генерацию кода, компиляцию и подготовку документации.
  • Кроссплатформенная сборка, которая должна работать и в Windows, и в POSIX-системах.
  • Генерация файлов проектов Visual Studio на основе описания сборки SCons.

Быстрый старт

  1. 1

    Установите SCons с помощью pip

    python -m pip install --user scons
  2. 2

    Прочитайте первые главы руководства пользователя SCons

Что важно знать

  • Требуется Python версии 3.9 или выше.
  • В Windows может потребоваться добавить в PATH каталог Scripts Python, в котором находится исполняемый файл scons.

Темы

Частые вопросы

Что такое scons?
SCons — инструмент сборки на Python: он определяет, что нужно пересобрать, и запускает необходимые команды. SCons управляет сборкой программного обеспечения и других продуктов, например документации: определяет, какие компоненты устарели, и запускает команды для их пересборки. Файлы конфигурации сборки — это обычные скрипты Python, поэтому логику сборки можно описывать на полноценном языке программирования, а не в отдельном предметно-ориентированном синтаксисе.
scons можно использовать бесплатно? Какая у него лицензия?
scons распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
scons всё ещё поддерживается?
Активно поддерживается. Последний коммит в scons — 3 нояб. 2026 г..
Для чего можно использовать scons?
Сборка проектов на C или C++, которым нужно автоматически отслеживать зависимости от заголовочных файлов. Создание единого скрипта сборки, который координирует генерацию кода, компиляцию и подготовку документации. Кроссплатформенная сборка, которая должна работать и в Windows, и в POSIX-системах. Генерация файлов проектов Visual Studio на основе описания сборки SCons.
Как установить scons?
Установите SCons с помощью pip: python -m pip install --user scons Прочитайте первые главы руководства пользователя SCons
Где скачать scons?
Исходный код и инструкции по установке — на GitHub: https://github.com/SCons/scons

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Кэш компилятора для Rust, C/C++ и CUDA, который восстанавливает готовые результаты сборки между worktree и запусками CI вместо повторной компиляции.

Инструменты разработчика#build-cache#rust#compiler-cache
1,4 тыс.+10 за неделю73RustApache-2.0Обновлён 5 часов назад