Эта страница охватывает базовые шаги, необходимые по сборке конечной разрабатываемой версии Thunderbird. Для дополнительной, более детальной информации, смотрите документацию по сборке.
Требования к сборке
Требования к характеристикам компьютера:
- Рекомендовано: 4Гб ОЗУ (имея только 2Гб ОЗУ и 2Гб свап могут возникнуть ошибки при компиляции)
- Высокоскоростной интернет
Подготовка:
В зависимости от вашей операционной системы вам нужно выполнить разные процессы по подготовке вашей машины. Сперва выполните инструкции для вашей ОС и затем следуйте этим инструкциям по сборке. Пожалуйста обратите внимание при сборке на Linux/MacOS следует игнорировать bootstrap скрипты при клонировании mozilla-central репозитория и обратиться к этому документу.
подготовка к сборке на Windows [ru-RU]
подготовка к сборке Linux и MacOS [ru-RU]
Получение исходного кода
Получите исходный код из Mozilla's comm-central
Mercurial репозитория:
hg clone https://hg.mozilla.org/comm-central
Затем, получите все зависимые репозитории. comm-central репозиторий включает скрипт,который выполнит именно это действие. Это может занять некоторое время, код огромный! Сперва, перейдите в поддиректорию comm-
central
(которая была создана автоматически при выполнении предыдущей команды):
cd comm-central
затем запустите:
python client.py checkout
исходный код требует 1.5 Гб свободного места или более.
Более подробную информацию смотрите на странице Getting comm-central Source Code Using Mercurial [en-US].
Конфигурирование сборки
Чтобы собрать thunderbird, Вам нужно добавить файл с именем .mozconfig
в comm-central директорию со следущей строчкой:
ac_add_options --enable-application=mail
Если Вы не пропишите эту строку, система будет собирать Firefox. Другие опции конфигурации могут быть также добавлены в этот файл, хотя строго рекоммендуется использовать только опции, которые Вам полностью понятны. Например, чтобы создать отладочную сборку вместо релизной, файл будет содержать:
ac_add_options --enable-debug
Более подробнее об опциях конфигурации, смотрите страницу build options. Обратите внимание на то, что если Вы используете MOZ_OBJDIR, то он не может быть расположен в подпапке с Вашим исходным кодом. Используйте абсолютные пути, чтобы быть уверенным!
Примечание к OS X 10.9
Поскольку проблема при сборке связана с 10.9 OS X SDK, Вы должны использовать SDK версии ниже. Для этого добавьте следующее в Ваш .mozconfig:
ac_add_options --with-macos-sdk=path/to/older/sdk
SDK располагается по пути /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/.
Смотрите Баг 976183 для подробной информации.
Сборка Thunderbird
Запустите сборку, перейдя в поддиректорию comm-central
(создана автоматически при выполнении команды hg
), и запустите:
./mozilla/mach build
mach наш консольный инструмент для упрощения общих задач разработки. Смотрите статью mach для подробностей.
Сборка может занять некоторое время, в зависимости от вашей машины, OS, и выбранных опций. Linux сборки на мощной машине могут занят 15 минут, но Windows сборки на слабой машине могут занять несколько часов. Советы по ускорению сборок.
Из-за бага 863409 Вы можете увидеть сообщение с ошибкой " Binary expected at ... does not exist." Вы можете спокойно игнорировать это сообщение. Исполняемый код будет запущен по адресу, указанному ниже
Сборка Thunderbird и Lightning
Если Вы настроили переменные сборки как было показано выше, тогда Вам необходимо выполнить :
echo 'ac_add_options --enable-calendar' >> .mozconfig
в папке comm-central
или только добавить строку ac_add_options --enable-calendar в ваш
.mozconfig с помощью вашего любимого редактора.
Затем перезапустить команду mach как показано выше (Вы можете добавить это до выполнения первого запуска).
Запуск
Различные временные файлы, библиотеки и исполняемый файл Thunderbird будут расположены в вашем объектном каталоге (ниже comm-central/
), который с приставкой obj-
. Точное название зависит от Вашей системы и ОС. Например, пользователь Mac получит имя директории obj-x86_64-apple-darwin10.7.3/
.
Исполняемый файл Thunderbird в частности и его зависимости располагаются ниже объектного каталога в dist/bin.
Запустите исполняемый файл из вашей рабочей директории comm-central
:
- Windows:
obj-.../dist/bin/thunderbird.exe
- Linux:
obj-.../dist/bin/thunderbird
- OS X:
obj-.../dist/Daily.app/Contents/MacOS/thunderbird
Как обновлять и собирать снова
В вашей директории comm-central
, запустите команду как показано ниже:
python client.py checkout
Затем пересоберите командой mach как показывалось выше. Будут пересобраны только измененные файлы, но все же это долго. Дополнительная сборка может быть быстрее.
Проблемы сборки?
Что у Вас:
- Проверялся Thunderbird tbpl для известных ошибок в то время как Вы вытягивали код?
- Если дерево сломано, Вы можете собрать с одной из веток ( вытянуть исходный код из ветки, просто заменив ссылку на репозиторий в hg clone инструкции).
- Проверили,чтобы убедиться,что путь, в который Вы поместили исходный код имеет достаточно места?
- Вы искали в баг базе вопросы, связанные с Вашей проблемой(например, вопросы по конкректным платформам)?
- Попробуйте узнать на mozilla.dev.builds - не забудьте включить детали содержания Вашего mozconfig, и какие ошибки возникли.
- Вы делали символьную ссылку на mozilla/? Она не работает.
- У Вас имеется
@ДИРЕКТОРИЯИСХОДНИКОВ@
или относительные пути в Вашем mozconfig? Они вызвали несколько проблем и как правило плохо тестируются, когда внесены изменения в систему сборки.