В этом файле ознакомительных сведений объясняется, как начать создавать, использовать и разрабатывать исходную базу Komodo Edit.
Хотя основной исходный код Komodo Edit размещен в этом репозитории, вы также можете проверить отдельные репозитории компонентов/аддонов на https://github.com/Komodo, если вы хотите внести свой вклад только в определенный компонент. Это сэкономит вам время и нервы, поскольку вам не придется создавать весь проект.
Вы можете скачать Komodo Edit здесь.
Связаться с разработчиками Komodo можно несколькими способами:
Гитхаб: https://github.com/Komodo/KomodoEdit
Форумы: http://forum.komodoide.com/
Система отслеживания ошибок: https://github.com/Komodo/KomodoEdit/issues.
IRC: irc://irc.mozilla.org/#komodo
Списки рассылки: komodo-discuss, komodo-beta и komodo-announce.
Обратите внимание, что это упрощенные этапы процесса сборки для более подробного руководства по проверке (устаревшего) BUILD.txt.
Python >=2.7 (но еще не Python 3.x). Вы можете установить ActivePython отсюда.
Visual C++ 11.0 (он же Visual Studio 2012) и все пакеты SDK платформы для сборки Mozilla с vc11, как описано здесь.
Установите версию 1.9.0 пакета «MozillaBuild-$ver.exe» в каталог по умолчанию (т. е. «C:mozilla-build»).
Установите Perl <= 5.22.
Установить Меркуриал
См. http://developer.mozilla.org/en/docs/Windows_Build_Prequires для получения более подробной информации о предварительных требованиях сборки Windows. Однако выполнения вышеуказанных шагов должно быть достаточно для создания Komodo.
Оформить заказ Komodo Edit: git clone https://github.com/Komodo/KomodoEdit.git
Используя командную строку, введите каталог оформления заказа и запустите:
cd mozilla
setenv-moz-msvc11.bat
python build.py configure -k 11.10
python build.py distclean all
Это позволит настроить и собрать Mozilla и может занять от 30 минут до нескольких часов (в зависимости от ваших требований). Для большинства современных машин это должно составлять около часа.
После успешной сборки Mozilla вернитесь в основной каталог репозитория и соберите Komodo:
cd ..
set PATH=utilblack;%PATH%
bk configure -V 11.10.0-devel # --without-binary-dbgp-clients
bk build
Это должно занять значительно меньше времени, чем создание Mozilla.
После завершения сборки вы можете просто запустить Komodo, выполнив bk run
После внесения каких-либо изменений в исходный код вам снова придется запустить bk build
или просто bk build && bk run
чтобы быстро вернуться в Komodo. Последующие сборки должны выполняться намного быстрее, поскольку большая часть скомпилированных данных кэшируется.
Python >=2.7 (но еще не Python 3.x). Вы можете установить ActivePython отсюда.
Если вы предпочитаете, вам также будет достаточно сборок Python с сайта python.org.
Xcode 6.4 (SDK 10.9 и 10.10). Для версии 8.0 см. ниже. Вы можете получить версию 6.4 с сайта загрузок для разработчиков.
MacOSX10.10.sdk или старше
ТОЛЬКО IDE SDK 10.8 для кода Intel. Можно найти в Xcode 5.1.1.
Если у вас установлены/нужны другие версии Xcode, вы можете использовать xcode-select
для изменения активного Xcode:
$ xcode-select -s /Path/To/Xcode 6.4.app/
Инструменты командной строки Xcode.
Откройте настройки Xcode, затем на вкладке «Загрузки» выберите и установите инструменты командной строки.
МакПортс. (Примечание: Fink тоже может работать, но большая часть тестирования сборки и инструкций выполняется с помощью MacPorts.)
автоконф v2.13. После установки MacPorts вам нужно просто запустить sudo port install autoconf213
убедитесь, что вы используете clang или gcc 4.2 (или выше)
См. http://developer.mozilla.org/en/docs/Mac_OS_X_Build_Prequires для получения более подробной информации о предварительных требованиях сборки Mac OS X. Однако выполнения вышеуказанных шагов должно быть достаточно для создания Komodo.
Официально мы не поддерживаем Xcode 8, однако Komodo можно собрать под Xcode 8, выполнив новые дополнительные шаги.
--options=disable-webrtc
Оформить заказ Komodo Edit: git clone https://github.com/Komodo/KomodoEdit.git
Используя терминал, войдите в каталог оформления заказа и запустите:
1) cd komodo/mozilla
2) python build.py configure -k 10.10
3) python build.py all
or
python build.py distclean all
(to delete and re-download Mozilla again)
Это позволит настроить и собрать Mozilla и может занять от 30 минут до нескольких часов (в зависимости от ваших требований). Для большинства современных машин это должно составлять около часа.
Если вы используете GCC 5.0, сборка может завершиться неудачей. Если да, то необходимо внести изменения в два файла. Однако если вы запускаете чистую сборку впервые, вам необходимо сначала разрешить сбой этой части сборки. Это связано с тем, что файлы находятся в части сборки Mozilla, которую необходимо сначала загрузить.
@@ -7509,8 +7509,6 @@
eval $(CXX="$CXX" HOST_CXX="$HOST_CXX" $PYTHON -m mozbuild.configure.libstdcxx)
AC_SUBST(MOZ_LIBSTDCXX_TARGET_VERSION)
AC_SUBST(MOZ_LIBSTDCXX_HOST_VERSION)
+ CXXFLAGS="$CXXFLAGS -D_GLIBCXX_USE_CXX11_ABI=0"
+ HOST_CXXFLAGS="$HOST_CXXFLAGS -D_GLIBCXX_USE_CXX11_ABI=0"
fi
Для получения дополнительной информации см. ошибку № 1153109 в базе данных ошибок Mozilla.
@@ -3874,7 +3874,7 @@
// Make sure we can't overflow.
if (NS_WARN_IF(UINT64_MAX - aLength < aStart)) {
ASSERT_UNLESS_FUZZING();
- return nullptr;
+ return false;
}
ErrorResult errorResult;
@@ -3883,7 +3883,7 @@
if (NS_WARN_IF(aStart + aLength > blobLength)) {
ASSERT_UNLESS_FUZZING();
- return nullptr;
+ return false;
}
Дополнительную информацию см. в разделе Портирование на GCC 5.
После успешной сборки Mozilla вернитесь в основной каталог репозитория и соберите Komodo:
cd ..
export PATH=`pwd`/util/black:$PATH # Komodo's "bk" build tool
git submodule update --init
git submodule update --remote
bk configure -V 10.10.0-devel
bk build
Это должно занять значительно меньше времени, чем создание Mozilla.
После завершения сборки вы можете просто запустить Komodo, выполнив bk run
После внесения каких-либо изменений в исходный код вам снова придется запустить bk build
или просто bk build && bk run
чтобы быстро вернуться в Komodo. Последующие сборки должны выполняться намного быстрее, поскольку большая часть скомпилированных данных кэшируется.
Инструкции для Linux
Самый простой способ начать — использовать наш образ Docker. По сути, это предоставит вам сборку Komodo на базе Ubuntu 12.04.
После клонирования репозитория просто перейдите в {repo}/util/docker
и проверьте ./docklet --help
Чтобы использовать образ Docker, вам, конечно, необходимо установить Docker, а также включить пересылку X11 в вашем SSH-клиенте (должно работать по умолчанию в большинстве дистрибутивов Linux).
./util/docker/docklet image
./util/docker/docklet start
./util/docker/docklet ssh
Файлы вашего проекта будут смонтированы в /komodo/dev
ПРИМЕЧАНИЕ. Если вы обновляетесь с предыдущей версии, в которой файлы вашего проекта находились в /root/komodo
вам необходимо будет исправить разрешения для папок проекта и профиля Komodo. Т.е.:
chown -R <my-username>:<my-group> <my-project-location>
chown -R <my-username>:<my-group> ~/.komodoide
Вам также потребуется переделать сборку (distclean Mozilla и Komodo).
Как только ваш образ будет подготовлен, вы можете выполнить шаги по сборке Linux, как описано выше. Вы будете запускать их из Docker-контейнера, поэтому подключитесь к нему по SSH, используя приведенную выше команду, а затем запустите команды из /komodo/dev
Как только ваша сборка будет завершена, вы выйдете из контейнера ( exit
) и сможете запустить Komodo с помощью
./util/docker/docklet run
Чтобы пересобрать Komodo (после внесения изменений) и запустить его снова, вы можете использовать
./util/docker/docklet build run
Если ваши изменения не отражаются, возможно, вам придется очистить сборку. Для этого используйте
./util/docker/docklet clean
Или сделать все сразу (очистить, собрать и запустить)
./util/docker/docklet clean build run
Если во время первой сборки возникли какие-либо ошибки и неясно, как решить проблему самостоятельно, обратитесь к разделу «Обратная связь», чтобы узнать, как связаться с нами.
Обратите внимание: если после обновления вашего репозитория последними изменениями возникают сложности со сборкой, вам может потребоваться очистить локальный кеш, поскольку он может конфликтовать с новыми изменениями. Для этого запустите bk distclean
перед выполнением шагов сборки.
Постройте единую деталь
Иногда bk build
— это слишком много, а bk build quick
недостаточно. Если bk build quick
не воспринимает ваши изменения, попробуйте указать bk build
на нужную часть.
Пример
bk build build/release/modules/places #this will build the places module only
ПРИМЕЧАНИЕ . Не полагайтесь на этот метод, поскольку bk build quick
работает быстрее и в некоторых случаях выполняет некоторые действия, которые не выполняются в приведенном выше примере. Используйте его в качестве последней попытки, прежде чем попробовать bk distclean && bk build
.