Вам понадобится:
SDK Samples
необязательна).
В разделе Microsoft Windows Core SDK — Tools, Build Environment, Redistributable Components
В разделе Microsoft Web Workshop SDK — Build Environment
При онлайновой установке из Интернета это примерно 180 Мб трафика.
dll-файлы
расположились в C:\vc71\bin
) следующие файлы: ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/vc71-glib-1.2.10-bin.zip и ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/vc71-libIDL-0.6.8-bin.zipINSTALL.EXE
из zip-архива и запустите его. Для установки выберите диск C:
. Когда появится командная строка, нажмите любую клавишу и подождите окончания установки. Когда закончится установка в режиме командной строки, вы вернетесь в инсталлятор. В нем нажмите OK для завершения установки.C:\Installs\cygwin
, в качестве пути установки пакетов установите C:\cygwin
. В поле Install
for выберите — All Users
, в поле Default Text File Type — Unix
. Затем найдите работающее зеркало откуда можно скачать пакеты, например ftp://mirrors.kernel.org/
Нажмите один раз на кнопку чтобы перейти в режим View All
. Выберите следующие пакеты (последние версии), если они еще не выбраны. Затем нажмите далее, чтобы начать их установку:ash -- UNIX-like command line interpreter shell cvs -- get the source with this (or another way, it's not really needed) diffutils -- file comparison utility fileutils findutils gawk -- pattern matching language (Devel category) grep -- text search tool libiconv -- Character conversion library make -- dependency analyzer for software builds (Devel category) patch -- used to apply a patch to enable building of Firefox due to errors in profile migration perl -- Larry Wall's Practical Extracting & Report Language (Interpreters category) sed -- a search and replace language sh-utils textutils unzip -- zip file extraction (Archive category) zip
SET MOZ_TOOLS=C:\moztools
, затем запустите install.bat
из каталога buildtools\windows
Создайте каталог E:\mozilla
. В нем создайте файл cvs_pull.bat
со следующим содержимым:
@echo off set PATH=C:\cygwin\bin;%path% set HOME=e:\mozilla set CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot cvs login cvs co mozilla/browser/config mozilla/client.mk cd e:\mozilla\mozilla\ make -f client.mk checkout MOZ_CO_PROJECT=browser
Если вы хотите скачать исходный текст Thunderbird, то замените
make -f client.mk checkout MOZ_CO_PROJECT=browser
на
make -f client.mk checkout MOZ_CO_PROJECT=mail
Если хотите скачать исходники и Firefox и Thunderbird, то замените эту строку на
make -f client.mk checkout MOZ_CO_PROJECT=browser,mail
Запустите этот файл. При запросе пароля введите anonymous
(не обращайте внимание на ошибку что .cvspass
не существует). Подождите окончания загрузки исходных кодов браузера.
Создайте файл конфигурации сборки .mozconfig
и поместите его в каталог E:\mozilla\mozilla
. В него вставьте следующие строки2):
Для сборки Firefox:
. $topsrcdir/browser/config/mozconfig export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 mk_add_options BUILD_OFFICIAL=1 mk_add_options MOZILLA_OFFICIAL=1 ac_add_options --disable-shared ac_add_options --enable-static ac_add_options --disable-activex ac_add_options --disable-activex-scripting ac_add_options --disable-debug ac_add_options --disable-tests ac_add_options --disable-logging ac_add_options --enable-svg ac_add_options --enable-canvas
Для сборки Thunderbird:
. $topsrcdir/mail/config/mozconfig export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 mk_add_options BUILD_OFFICIAL=1 mk_add_options MOZILLA_OFFICIAL=1 ac_add_options --disable-shared ac_add_options --enable-static ac_add_options --disable-activex ac_add_options --disable-activex-scripting ac_add_options --disable-debug ac_add_options --disable-tests ac_add_options --disable-logging
Если хотите чтобы сборка получилась оптимизированной добавьте в него одну из следующих строк3) (более подробно эти опции обьяснены здесь). Будьте внимательны с параметром -GA, т. к. он нужен только для опимизации .EXE файлов, но не .DLL:
## ## CPU Optimization ## Для PentiumPro/Pentium2/Pentium3 ac_add_options --enable-optimize="-O2 -GA -G6" ## Для Pentium4/Athlon (оптимизация под процессоры с набором инструкций SSE) ac_add_options --enable-optimize="-O2 -GA -G7 -arch:SSE" ## Для Pentium4/Athlon (оптимизация под процессоры с набором инструкций SSE2) ac_add_options --enable-optimize="-O2 -GA -G7 -arch:SSE2"
Если хотите собрать русифицированный Firefox добавьте в файл эту строку:
ac_add_options --enable-ui-locale=ru
Создайте файл для установки переменных и сборки build.bat со следующим содержимым. Сохраните его в каталоге E:\Mozilla
@ECHO OFF SET PATH=C:\vc71\bin;C:\Program Files\Microsoft Visual C++ Toolkit 2003\bin;C:\Program Files\Microsoft Platform SDK\Bin;C:\Program Files\Microsoft.NET\SDK\v1.1\Bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\wbem;C:\moztools\bin;C:\cygwin\bin;C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE;C:\Program Files\Microsoft Platform SDK\Bin\win64;C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322;C:\masm32\BIN SET LIB=C:\Program Files\Microsoft Visual C++ Toolkit 2003\lib;C:\Program Files\Microsoft Platform SDK\Lib;C:\Program Files\Microsoft.NET\SDK\v1.1\Lib;C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\lib;C:\masm32\LIB;C:\Program Files\Microsoft Platform SDK\Lib\IA64 SET INCLUDE=C:\Program Files\Microsoft Visual C++ Toolkit 2003\include;C:\Program Files\Microsoft Platform SDK\include;C:\Program Files\Microsoft.NET\SDK\v1.1\include;C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include;C:\Program Files\Microsoft Platform SDK\include\Win64\crt;C:\masm32\INCLUDE;C:\Program Files\Microsoft Platform SDK\include\atl SET GLIB_PREFIX=C:\vc71 SET LIBIDL_PREFIX=C:\vc71 SET MOZ_TOOLS=C:\moztools SET CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot SET HOME=E:\mozilla SET CVS_RSH=ssh SET MOZILLA_OFFICIAL=1 SET BUILD_OFFICIAL=1 SET NO_MFC=1 ECHO Installation environment variables set! @ECHO ON cd .\mozilla make -f client.mk build
Обратите внимание: каталоги, содержащие glib и libidl для VC71, должны быть объявлены в PATH раньше каталогов MOZTOOLS!
Запустите файл build.bat
и ждите окончания сборки. После окончания сборки Firefox или Thunderbird можно найти в каталоге E:\mozilla\mozilla\dist\bin
. Переместите его куда-нибудь и запустите firefox.exe
или thunderbird.exe
.
Возможно вы захотите избавиться от лишних файлов и каталогов образовавшихся при сборке. Я для этого создал небольшой shell-script
(запускать из под Cygwin)
cd /cygdrive/e/mozilla/mozilla/dist/bin rm bloaturls.txt rm mangle* rm regxpcom* rm -r res/samples rm -r res/throbber rm shlibsign* rm winEmbed.exe rm xpcshell* rm xpidl* rm xpt_dump* rm xpt_link* rm res/arrow.gif rm res/arrowd.gif rm res/boatcycle.html rm res/cmessage.txt rm -r res/html rm res/loading-image.gif rm -r res/rdf rm res/viewer.properties rm res/viewsource.css rm chrome/app-chrome.manifest rm chrome/chromelist.txt rm chrome/embed-sample.jar