Build Environment
Данная статья частично является переводом официальной вики. Последнее обновление 04-11-2017
Содержание
Среда сборки
Для сборки ReactOS вам потребуется подходящая среда сборки. Так как исходный код ReactOS совместим лишь с некоторыми версиями компиляторов, то поддерживается только официальная Среда сборки (RosBE). Если вы хотите отправить отчёт о возникших проблемах, сначала убедитесь, что используете последнюю версию RosBE.
Загрузка среды сборки
Всего доступно две версии среды сборки ReactOS: версия для Windows NT-совместимых операционных систем (Windows XP, Windows Vista, Windows 7 и т.д.), и версия для Unix-совместимых операционных систем (Linux, FreeBSD и т.д.).
Windows
Среда сборки ReactOS для Windows NT-совместимых ОС Версия 2.1.5
- Дополнение для ARM - Версия 1.0
- Старые версии среды сборки ReactOS можно скачать на странице проекта ReactOS в SourceForge
Unix и Linux
Среда сборки ReactOS для Unix-совместимых ОС Версия 2.1.2
- Старые версии среды сборки ReactOS можно скачать на странице проекта ReactOS в SourceForge
- Системные требования: Ознакомьтесь с файлом README для получения дополнительной информации о необходимых пакетах и других требованиях.
Дальнейшие шаги
Для загрузки текущей ревизии исходных кодов из Subversion-репозитория ReactOS вам необходим Subversion-клиент (для получения дополнительных сведений прочтите эту страницу). При использовании новой версии среды сборки на Windows (0.3.7+), где SVN-клиент включён в состав пакета, перейдите в пустую директорию ".\Source" и введите "ssvn create" для загрузки исходных кодов ReactOS.
После установки Среды сборки, прочтите статью Сборка ReactOS для получения дополнительной информации.
Утилиты в составе RosBE
Вся приведённая информация содержится также в RosBE, и выводится на экран по команде help.
BASEDIR
Команда, немедленно возвращающая вас обратно к директории с исходным кодом ReactOS.
CHARCH
Изменение архитектуры, для которой будет производиться сборка ReactOS, для текущей сессии. Возможные на данный момент архитектуры:
- i386
- amd64
CHDEFDIR
Изменение директории с исходным кодом ReactOS для текущей сессии RosBE.
- previous: переход к предыдущей директории с исходным кодом ReactOS.
CHDEFGCC
Использование: chdefgcc [ПУТЬ] [ТИП] Изменение директории MinGW/GCC для текущей сессии RosBE.
- ПУТЬ: Путь для установки исходного или целевого GCC.
- ТИП: Установите это значение в "target" (целевой) или "host" (исходный)
RADDR2LINE
Основная статья: Отладка - Преобразование адресов
Использование: raddr2line [ФАЙЛ] [АДРЕС] Переводит адреса программ в имена файлов и номера строк для помощи разработчикам в поиске особых ошибок в ReactOS. Если не будет использовано никаких параметров, то будет выведен запрос их ввода.
- ФАЙЛ: Это может быть полный путь или только имя исполняемого файла [вы можете задавать только часть имени файла, т.е. ntdll*] который необходимо проанализировать. Если вы зададите только имя файла, то поиск файла будет производиться по текущей директории и её поддиректориям.
- АДРЕС: Адрес, который необходимо перевести.
SCUT
Простая утилита для управления расположением различных директорий. SCUT может быть использована для быстрого переключения из одной директории в другую внутри командной строки Среды сборки, что упрощает переход к исходному коду в другой директории. Включена в состав Сред сборки для ОС Windows и Unix. Вы можете передать scut следующие параметры:
- list: Списки всех доступных ссылок.
- add: Добавляет ссылку к списку.
- edit: Редактирование ссылки в списке.
- rem: Удаление ссылки из списка.
- def: Переключение на стандартное размещение директории, которое производится каждый раз при запуске RosBE.
Если вы хотите использовать ссылку на директорию, например, с именем trunk, просто введите scut trunk и программа переключит директорию на сопоставленную этому ярлыку.
SVN
ТОЛЬКО для Windows. Создает, обновляет и очищает дерево исходных кодов ReactOS или показывает номер ревизии локальных и онлайн деревьев исходных кодов.
- update: Обновление до НОВЕЙШЕЙ ревизии или до ревизии, заданной вторым параметром.
- create: Создание нового дерева исходных кодов ReactOS.
- rosapps: Создание нового дерева исходных кодов RosApps ReactOS.
- rostests: Создание нового дерева исходных кодов RosTests ReactOS.
- cleanup: Очистка и устранение ошибок в дереве исходных кодов.
- status: Отображение текущего номера локальной и онлайн ревизий.
UPDATE
ТОЛЬКО для Windows. Обновляет все файлы RosBE до самых последних версий.
- delete X: Удаление обновления № X.
- info X: Вывод информации об обновлении № X.
- nr X: Установка/переустановка обновления № X.
- reset: Удаление кэша обновлений. Использование не рекомендовано.
- status: Вывод актуального статуса доступных и не установленных обновлениях.
Вопросы или проблемы?
Если у вас возникли проблемы или вопросы, касающиеся Среды сборки, то лучше всего их задать на IRC-каналах #reactos-rosbe или #reactos.
В противном случае вы также можете попробовать связаться непосредственно с Даниэлем Реймером (версия для Windows) или Колином Финком (версия для Unix).