mozilla
Your Search Results

    Windows ビルド環境の準備

    このページでは、Windows 上で Firefox もしくは Thunderbird の開発者バージョンや試験バージョンのビルド環境構築手順を説明しています。

    必須ハードウェアスペック

    Firefox ビルドプロセスは I/O と CPU 両方ともに負担をかけ、最新のマシンでもビルドに長い時間がかかります。Mozilla 開発をするための最小・推奨環境は次の通り。

    • 少なくとも 2GB の RAM。8GB 以上を推奨します。
    • 35GB の ディスク容量。これは Visual Studio 2013 Community Edition や必要な SDK 群、MozillaBuild パッケージ、Mercurial ソースレポジトリ、そしてコンパイル時に必要となる一時的なスペースを含めたものです。早い SSD を推奨します。Firefox ビルドプロセスは I/O を消費するためです。
    • Windows 7(ServicePack 1) 以上の 64 ビットバージョンのOS。まだ 32 ビットの Windows 版 Firefox や XP/SP3 のような WIndows 版 Firefox もビルドすることはできますが、2015 年の早い段階から Firefox は 32 ビットの Windows マシンではビルドできなくなるでしょう。VS 2014 Community Edittion では Windows Vista 以前をサポートしなくなるからです。

    概要

    Mozilla ビルドプロセスは一般的な Windows システムにはインストールされていないツールを多く要求します。ビルドするにあたり適切なバージョンの bash / GNU / make / autoconf / Mercurial / much などをバンドルしている Mozilla Build と、Visual Studio をインストールする必要があります。

    Mozilla コードベースでは正式リリースするためにVisual Studio 2013(VC12)を利用します。Firefox 37 から これ以前の Visual Studio のバージョンでは動作しなくなることに注意してください。Mozilla では Visual Studio 2012 より前ではサポートしていない C++ 11 の機能を利用するようにしたためです。

    ビルド環境のインストール

    ビルド成功させるためには以下の手順を踏んでください。以下の必須ソフトウェアにはいくつか注意しないといけないことがあります。

    1. Windows Update を完了している必要があります。
    2. Visual Studio Community 2013 (無償) をインストールします。もしくは有償版の Visual Studio(VS2013 Professional など) または Visual Studio Express 2013 For Windows Desktop が利用できます。Firefox のビルドでは Microsoft Foundation Classes for C++ のような VS2013 Community のオプションインストールは不要です。これ以前の Visual Studio はサポートしません。Firefox コードベースは C++ の機能に依存しており、 VS2012 以前のバージョンでは利用している機能をサポートしていないためです。
    3. MozillaBuild をダウンロードしてインストールしてください。これには追加ビルドツール群が含まれます。もし既に Cygwin がインストールされている場合は、Tips をご覧ください。(Mozilla Build のインストーラが既にインストール済みの場合、ダイアログが表示され、再インストールをしたいときに 'correct settings' を選ぶと適切なオプションでインストールしなおします) Mozillauild についての詳しい情報と最新版へのリンクは https://wiki.mozilla.org/MozillaBuild で得られます。
    4. もし Windos 8 UI(Metro で知られています) のビルドに興味がある場合、Windows 8 Integration - Building Locally に情報があります。

    特定の環境では以下の問題が発生することがあります。

    Thunderbird と SeaMonkey で MAPI ヘッダーファイルが必要になる。

    • Visual Studio 2013 (Windows SDK 8.1)には MAPI ヘッダーファイルが含まれないため、MAPI ヘッダーファイルをhttp://www.microsoft.com/en-us/download/details.aspx?id=12905 からダウンロードしてインストールする必要があります。そして、ビルドプロセスで参照できるようにヘッダーファイルを Windows SDK に含まれるディレクトリへコピーする必要があります。 例:C:\Program Files (x86)\Windows Kits\8.1\Include\shared

    リリースビルドの作成 (全ての Visual Studio バージョン)

    • June 2010 DirectX SDK をインストールしてください。これは Windows XP 環境で必要となる D3D compiler DLL(d3dcompiler_43.dll) の古いバージョンをビルドがパッケージングできるようにするためです。

    Visual Studio Express 2013 にはいくつかバージョンがあることに注意してください

    • "Windows Desktop" は動作します。
    • "Visual Studio 2013 Express For Web" や "Visual Studio 2013 Express For Windows" は動作しません。Visual Studio Community 2013 を推奨します。

    メタ文字やクォート文字・「+」のようなブレイク文字やスペースを含むパスにツールをインストールすると Mozilla のビルドは動作ません。スペースを含むパスにインストールされるべき Visual Studio ツールと SDK は例外です。インストールパスについてはインストール時の初期値を利用することを強くお勧めします。

    ビルドコマンドプロンプトを開く

    ビルド環境に必要なツール群のインストールが完了したら、MozillaBuild をインストールしたディレクトリにある以下のバッチファイルを起動してください。(c:¥mozilla-build が初期フォルダです)

    • start-shell-msvc2013.bat (for Visual Studio 2013)
    64 ビット Windows を使っているからといって、start-shell-msvcNNNN-x64.bat ファイルは実行しないでください。このファイルは試験的でサポートされません。詳細は Build:MozillaBuild For x64 wiki page.をご覧ください。

    これは 前述した Mozilla コードベースのビルドと設定ができる MSYS / BASH コマンドプロンプトが起動します。全ての他のコマンドも実行するとコマンドプロンプトウィンドウとして起動します。(Windowx の CMD.EXE シェルと似ていますが別物であることに注意してください。)

    ソースのディレクトリを作成する

    注意:
    You won't be able to build the Firefox source code if it's under a directory with spaces in the path (e.g., don't use "Documents and Settings"). You can pick any other location, such as a new directory C:\mozilla-central.

    It's a sensible idea to create a new directory dedicated solely to the code:

    cd /c; mkdir mozilla-source; cd mozilla-source
     

    Now you are ready to get the Firefox source and build; continue on to Simple Firefox build (Get_the_source).

    Command Prompt Tips and Caveats

    • To paste into this window, you must right-click on the window's title bar, move your cursor to the Edit menu, and click Paste. You can also set Quick Edit Mode in the Properties menu and use a right-click in the window to paste your selection.
    • If you have cygwin installed, make sure that the MozillaBuild directories come before any cygwin directories in the search path (use echo $PATH to see your search path).
    • In the MSYS / BASH shell, the c: drive looks like a directory called c under the root directory (/). So if you want to change to the directory c:\mydir, in the MSYS shell you would use cd /c/mydir.  Note the UNIX-style forward slashes (/) in the prompt instead of the Windows-style backward slashes (\).
    • The MSYS root directory is located in c:\mozilla-build\msys if you used the default installation directory. It's a good idea not to build anything under this directory. Instead use something like /c/mydir.

    Common problems, hints, and restrictions

    • Debugging Mozilla on Windows FAQ: Tips on how to debug Mozilla on Windows.
    • The build may fail if your PATH environment variable contains quotes ("). Quotes are not properly translated when passed down to MozillaBuild sub-shells. Quotes are usually not needed so they can be removed.
    • The build may fail if you have a PYTHON environment variable set. You will see an error almost immediately that says "The system cannot find the file specified". In a command shell, typing "SET PYTHON=" before running the Mozilla build tools in that same shell should fix this. Make sure that PYTHON is actually unset, rather than set to an empty value. In the command shell, "SET PYTHON" (without an equal sign or quotes) should respond: "Environment variable PYTHON is not defined".
    • The build may fail if you have cygwin installed. Make sure that the MozillaBuild directories (c:\mozilla-build and subdirectories) come before any cygwin directories in your PATH environment variable. If this does not help, remove the cygwin directories from PATH, or try building on a clean PC with no cygwin.
    • Building with versions of NSIS other than the version that comes with the latest supported version of MozillaBuild is not supported and will likely fail.
    • If you intend to distribute your build to others, you will need to set WIN32_REDIST_DIR=$VCINSTALLDIR\redist\x86\Microsoft.VC80.CRT in your mozconfig to get the Microsoft CRT DLLs packaged along with the application.
    • The Microsoft Antimalware service can interfere with compilation, often manifesting as an error related to conftest.exe during build. To remedy this, add at least your object directory to the exclusion settings.
    • If you encounter an error that atlbase.h cannot be found and you have installed Visual Studio 10 Express together with the platform SDK, you may have to delete a registry entry so that guess-msvc.bat doesn't detect VC10 installed. The key is HKLM\SOFTWARE\Microsoft\VisualStudio\10.0\Setup\VC.
    • If you encounter an error like "second C linkage of overloaded function '_interlockedbittestandset' not allowed", it happens when intrin.h and windows.h are included together. Use a #define to redefine one instance of the function's name. See more on using intrin.h.
    • Parallel builds (-jN) do not work with GNU make on Windows. You should use the mozmake command included with current versions of MozillaBuild. Building with the mach command will always use the best available make command.

    警告: If you follow the below advice, your computer will not be protected against attacks that exploit this vulnerability. Make sure you take adequate precautions.

    • If you still get random crashes when running make, you may be encountering interference from Windows Security Updates that prevents proper operation of the Bash shell on some Windows systems. In this case, if you're on Windows XP, you will need to uninstall Windows XP Security Updates KB933729 and KB970238 using Add or Remove Programs from the Control Panel. The first of these Security Updates is also incorporated into Windows XP Service Pack 3 (KB936929), so if you have already installed SP3 you'll need to uninstall it and then make sure that Service Pack 2, including all Windows updates (EXCEPT KB933729, KB936929, and KB970238) get installed. To prevent these updates from being installed automatically, select "Notify me but don't automatically download or install them" in the Control Panel's "Automatic Updates" dialog. Then de-select them when any of these items appear in the list of recommended updates, and when asked, indicate that you don't want to be asked about these de-selected updates in the future.

    Microsoft DirectX SDK (when using Windows SDK Version 7 or below)

    If you are using a Windows SDK previous to version 8, the June 2010 DirectX SDK (specifically) is required for building the ANGLE GLES-on-D3D9 renderer for WebGL support on Windows.  As part of the DirectX SDK install, you must install the End-User Redistributable Packages; don't uncheck it in the installer.  For creating full release builds of Firefox, the June 2010 DirectX SDK is required with any Visual Studio version, but only so that an older version of the D3D compiler DLL (d3dcompiler_43.dll) can be packaged with the build for Windows XP compatability.  For development on Windows 7 and later, the Windows 8 SDK contains all the necessary files to build.

    Note: The DirectX SDK installer may display an "S1023" error during the final installation step. You may be able to simply ignore this error and continue with the Mozilla build process. If the Mozilla build system still cannot locate the DirectX SDK, see this Microsoft support page.

    MozillaBuild

    The MozillaBuild package contains the other software prerequisites necessary for building Mozilla. This includes the MSYS build environment, Mercurial, autoconf-2.13, CVS, Python, YASM, NSIS, and UPX, as well as optional but useful tools such as wget and emacs.

    Download the current MozillaBuild package.

    By default, the package installs to c:\mozilla-build. It is recommended to use the default path. Don't use a path that contains spaces. The installer does not modify the Windows registry. Note that some binaries may require Visual C++ Redistributable package to run.

    Expectation setting: Note that the "UNIX-like" environment provided by MozillaBuild is only really useful for building and committing to the Mozilla source. Most command line tools you would expect in a modern Linux distribution are not present, and those tools that are provided can be as much as a decade or so old (especially those provided by MSYS). It's the old tools in particular that can cause problems, since they often don't behave as expected, are buggy, or don't support command line arguments that have been taken for granted for years. For example, copying a source tree using cp -rf src1 src2 does not work correctly because of an old version of cp (it gives "cp: will not create hard link" errors for some files). In short, MozillaBuild supports essential developer interactions with the Mozilla code, but beyond that don't be surprised if it trips you up in all sorts of exciting and unexpected ways.

    Return to the Build Documentation

    ドキュメントのタグと貢献者

    Contributors to this page: mantaroh, Marsf
    最終更新者: mantaroh,