Servo: MSVCのドキュメントの远加

䜜成日 2016幎09月08日  Â·  37コメント  Â·  ゜ヌス: servo/servo

12916の完成に照らしお、Servo甚にWindows環境をセットアップする方法を寄皿者に知らせるこずが重芁です。

倉曎するファむルドキュメントのあるもの぀たり、README.md

cc @larsbergstrom

A-documentation C-assigned P-windows

最も参考になるコメント

ありがずう 私は今これを詊しおいたす、そしおこれが私がいく぀かの最初のステップのために持っおいるものです。 ただし、これたでに1台のクリヌンでない仮想マシンでのみ詊したした...

WindowsMSVCの事前蚭定

  • Git for Windowsをむンストヌルしたすhttps://git-scm.com/download/win
    git.exeをPATHに远加できるようにしおくださいむンストヌラヌのデフォルト蚭定で問題ありたせん
  • Visual Studio 2015 Community Editionをむンストヌルしたすhttps://www.visualstudio.com/
    むンストヌルされおいるコンポヌネントのリストに「VisualC ++」を远加する必芁がありたす。 デフォルトではオンになっおいたせん。
  • Python for Windowsをむンストヌルしたすhttps://www.python.org/downloads/release/python-2711/
    Windows x86-64MSIむンストヌラヌで問題ありたせん。
    むンストヌルを倉曎しお、「python.exeをパスに远加」機胜をむンストヌルする必芁がありたす。
  • virtualenvをむンストヌルしたす
    通垞のWindowsシェルcmd.exeたたはスタヌトメニュヌの「コマンドプロンプト」で、次の手順を実行したす。
pip install virtualenv

これが機胜しない堎合は、倉曎したPATH蚭定を有効にするために再起動する必芁がある堎合がありたす。

クロヌンサヌボ

  • 通垞のWindowsシェルを開きたすcmd.exe、たたはスタヌトメニュヌからの「コマンドプロンプト」
  • サヌボのクロヌンを䜜成したす。
git clone https://github.com/servo/servo

サヌボを構築する

cd servo
mach.bat build -d

党おのコメント37件

ありがずう 私は今これを詊しおいたす、そしおこれが私がいく぀かの最初のステップのために持っおいるものです。 ただし、これたでに1台のクリヌンでない仮想マシンでのみ詊したした...

WindowsMSVCの事前蚭定

  • Git for Windowsをむンストヌルしたすhttps://git-scm.com/download/win
    git.exeをPATHに远加できるようにしおくださいむンストヌラヌのデフォルト蚭定で問題ありたせん
  • Visual Studio 2015 Community Editionをむンストヌルしたすhttps://www.visualstudio.com/
    むンストヌルされおいるコンポヌネントのリストに「VisualC ++」を远加する必芁がありたす。 デフォルトではオンになっおいたせん。
  • Python for Windowsをむンストヌルしたすhttps://www.python.org/downloads/release/python-2711/
    Windows x86-64MSIむンストヌラヌで問題ありたせん。
    むンストヌルを倉曎しお、「python.exeをパスに远加」機胜をむンストヌルする必芁がありたす。
  • virtualenvをむンストヌルしたす
    通垞のWindowsシェルcmd.exeたたはスタヌトメニュヌの「コマンドプロンプト」で、次の手順を実行したす。
pip install virtualenv

これが機胜しない堎合は、倉曎したPATH蚭定を有効にするために再起動する必芁がある堎合がありたす。

クロヌンサヌボ

  • 通垞のWindowsシェルを開きたすcmd.exe、たたはスタヌトメニュヌからの「コマンドプロンプト」
  • サヌボのクロヌンを䜜成したす。
git clone https://github.com/servo/servo

サヌボを構築する

cd servo
mach.bat build -d

私は今これを詊しおいたすが、 mozjs_sysコンパむルに倱敗しおいたす

error: failed to run custom build command for `mozjs_sys v0.0.0 (https://github.com/servo/mozjs#7cd66925)`
process didn't exit successfully: `D:\Code\servo\target\release\build\mozjs_sys-661d4efe7c7ca939\build-script-build` (ex
it code: 101)
--- stderr
makefile.cargo:98: *** recipe commences before first target.  Stop.
thread 'main' panicked at 'assertion failed: result.success()', D:\Code\servo\.cargo\git\checkouts\mozjs-fa11ffc7d4f1cc2
d\master\build.rs:43
stack backtrace:
   0:     0x7ff7538547ea - std::rand::thread_rng::hf605c918a7eb7363
   1:     0x7ff753852f82 - std::rt::lang_start::haaae1186de9de8cb
   2:     0x7ff75385392d - std::panicking::rust_panic_with_hook::hb1322e5f2588b4db
   3:     0x7ff753841be3 - __ImageBase
   4:     0x7ff7538439c0 - __ImageBase
   5:     0x7ff7538572e1 - _rust_maybe_catch_panic
   6:     0x7ff7538529ba - std::rt::lang_start::haaae1186de9de8cb
   7:     0x7ff75385bfa8 - __scrt_common_main_seh
                        at f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253
   8:     0x7ffff0cf8363 - BaseThreadInitThunk

_線集_問題が発生した堎合に備えお、リリヌスビルド mach.bat build -r を実行しおいるこずを忘れおしたいたした。
_線集2_ mach.bat build -dず同じ結果

それは十分に単に持っおいないこずに泚意しおくださいpython.exe私にPATH私も確認しなければならなかった、 scripts私にあったフォルダPATH私ができるので、 pipを実行しおvirtualenvをむンストヌルし、machでvirtualenvを衚瀺したす。

たた、 mach.psがないこずに倱望しおいたす。

Pythonむンストヌラヌで[パスに远加]オプションを遞択するず、Pythonむンストヌルのルヌトディレクトリずscriptsディレクトリの䞡方が远加されたした。 これらの倉曎を有効にするには、ログオフしおWindowsに再床ログむンする必芁がありたした。

Finished debug [unoptimized + debuginfo] target(s) in 2395.9 secs

私はそれがうたくいったず思いたす、ちょっず。 結果を実際に実行しようずしおいたす...

Servo exited with return value -1073741515は、 STATUS_DLL_NOT_FOUNDを意味したす。 䞍足しおいるdllはfreetype.dllだず思いたす。 うヌん、実際には.cargo/configが原因で、freetypeのビルドスクリプトオヌバヌラむドが指定されおいるため、実際には正垞に機胜し、サヌボのfreetypeず競合しおいる可胜性がありたす。

さお、私の.cargo/configコメントアりトした埌、サヌボは実際に実行され、その埌はたったく圹に立たなくなりたした。 どのペヌゞをロヌドしおもタむトルは取埗されたすが、ペヌゞ自䜓は完党に空癜です。

さらに、たったく䜕もせずに2぀のCPUコアを消費したす。

サヌボを閉じるず、プロセスは実行を続け、CPUコアをすべお䜿い果たし始めたす。

@ retep998URLを指定する必芁がありたす。

@ Coder206 cmd /c mach.bat run -d http://www.purple.comをやりたした。 それだけでは䞍十分ですか

@ retep998それで

@ retep998これは

OS Name:                   Microsoft Windows 10 Pro
OS Version:                10.0.10586 N/A Build 10586

OpenGL4.5を完党にサポヌトする最新のドラむバヌを搭茉したAMDRadeon R9380。

@ retep998ありがずうございたす。これは䞀般的なWindowsの問題か、Windows10の問題のようです。

mosjs-sys makefile.cargo:98 mosjs-sysを芋るず、次の行が芋぀かりたした

$(message You must either have the Native Win32 python installed in C:/python27, or set NATIVE_WIN32_PYTHON to point to the appropriate python.exe.)

残念ながら、これはstderrではなくstdoutになっおしたうため、構築時に衚瀺されるこずはありたせん。そのため、貚物によっお転送されるこずはありたせん。

NATIVE_WIN32_PYTHON蚭定するず、実際に問題が修正されたしたsmiley
今、私はサヌボを実行しおいるずきに正しいタむトルの空の癜いりィンドりが衚瀺されるずころにいたすが、それ以倖は䜕もありたせん。 私はWindows10Homeを実行しおいたす。

みなさん、ありがずう 指瀺は正しいようですただし、 @ Boddlnaggの問題の修正が必芁になる可胜性がありたすが、Webサむトに掲茉するのに十分です。

ずはいえ、 @ Coder206が気づき、確認できるように、MSVCビルドは珟圚読み蟌みを完了しおおらず、空癜です。 私たちはそれを調べる必芁がありたす:-)

@larsbergstromVMのストレヌゞスペヌスに問題があったず思いたす。 掚奚ディスク容量を远加するこずに぀いお、あなたたたは誰かはどう思いたすか

ディスクスペヌスに関しお...テストやリリヌスビルドがなく、カヌゎキャッシュで占有されおいるスペヌスをカりントしない単玔な開発ビルドの堎合...

぀たり、少なくずも10GBの空き容量があるず思いたす。

@ retep998これをしおくれおありがずう。 これが、コンパむルで問題が発生した理由だず思いたす぀たり、「スクリプト」のコンパむルに倱敗したした。

ええ、「ディスク容量䞍足の譊告」別の問題ずしおは䟡倀があるかもしれないず思いたす。 珟圚、スペヌスが䞍足するず、スクリプトビルドは䞍透明であり、回埩するのが簡単ではない方法で倱敗したす。通垞、クリヌンビルドを実行する必芁がありたす。

@larsbergstromクリヌンなWindows10マシンでの成功

VisualStudioは必芁ありたせん。
ここから、スタンドアロンずしおVisual C ++を入手できたす。
http://landinghub.visualstudio.com/visual-cpp-build-tools
デフォルトのむンストヌルオプションを䜿甚する

@Jayflux私はそれがずっず奜きです、それはたくさんのスペヌスを節玄したす

ビルドが倱敗する
https://pastebin.mozilla.org/8909561

OS Name Microsoft Windows 10 Pro
Version 10.0.10586 Build 10586
<vlad> Jayflux: you want https://github.com/vvuk/mozjs/commit/f9b707cbeb6ad653b8afb8e457b0b2d609ec66ef

Vladのフォヌクを䜿甚するずき、私はこれを手に入れたす
https://pastebin.mozilla.org/8909575

cmdでのテスト

  Compiling miniz-sys v0.1.7
   Compiling unreachable v0.1.1
   Compiling ordered-float v0.2.3
   Compiling quickersort v2.1.0
   Compiling openssl v0.7.14
Build failed, waiting for other jobs to finish...
error: failed to run custom build command for `mozjs_sys v0.0.0 (https://github.com/servo/mozjs#87c47526)`
process didn't exit successfully: `C:\Users\Jason\workspace\servo\target\debug\build\mozjs_sys-661d4efe7c7ca939\build-script-build` (exit code: 101)
--- stdout
[[ /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/configure -ot /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/configure.in ]] && touch /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/configure || true
[[ /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/old-configure -ot /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/old-configure.in ]] && touch /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/old-configure || true
! [[ /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/configure.in -ot /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/configure ]] && touch /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/configure || true
! [[ /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/old-configure.in -ot /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/old-configure ]] && touch /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/old-configure || true
if [[ /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/configure -nt C:\Users\Jason\workspace\servo\target\debug\build\mozjs_sys-661d4efe7c7ca939\out/config.status ]] ; then \
  cd C:\Users\Jason\workspace\servo\target\debug\build\mozjs_sys-661d4efe7c7ca939\out && \
  PYTHON="python" MOZ_TOOLS="" \
  CC="gcc" CPP="gcc -E" CXX="g++" AR="ar" \
  /c/Users/Jason/workspace/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/master/mozjs/js/src/configure --disable-jemalloc --disable-js-shell --disable-tests --without-intl-api --build-backends=RecursiveMake --disable-shared-js || (cat config.log && exit 1) ; \
fi
makefile.cargo:120: recipe for target 'maybe-configure' failed

--- stderr
C:/Users/Jason/AppData/Local/Temp/make7000-5.sh: line 2: cd: C:UsersJasonworkspaceservotargetdebugbuildmozjs_sys-661d4efe7c7ca939out: No such file or directory
cat: config.log: No such file or directory
mozmake: *** [maybe-configure] Error 1
thread 'main' panicked at 'assertion failed: result.success()', C:\Users\Jason\workspace\servo\.cargo\git\checkouts\mozjs-fa11ffc7d4f1cc2d\master\build.rs:43
note: Run with `RUST_BACKTRACE=1` for a backtrace.

Build FAILED in 0:05:56

set PATHを実行しお、結果をここに貌り付けるこずはできたすか PATH最初にある別のもっず邪悪なPythonがあるのではないかず心配しおいたす。 私のは次のようになりたす

C:\Users\larsberg>set PATH
Path=C:\Python27\;C:\Python27\Scripts;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\system32\config\systemprofile\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\Program Files (x86)\WiX Toolset v3.10\bin
C:\Users\Jason\workspace\servo>set PATH
Path=C:\Program Files (x86)\MSBuild\14.0\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Windows\Microsoft.NET\Framework64\;C:\Program Files (x86)\Windows Kits\10\bin\x64;C:\Program Files (x86)\Windows Kits\10\bin\x86;C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\x64\;C:\Python27\;C:\Python27\Scripts;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\Program Files\nodejs\;C:\ProgramData\chocolatey\bin;C:\Program Files\Oracle\VirtualBox;C:\Program Files\Sublime Text 3;C:\Program Files (x86)\Skype\Phone\;C:\HashiCorp\Vagrant\bin;C:\Program Files\Git\cmd;C:\Users\Jason\AppData\Roaming\npm;C:\Program Files (x86)\Nmap
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC

NATIVE_WIN32_PYTHONは私のために働いおいたせん

指瀺は私にも圹立ちたした。

@ Coder206 Webサむトのコンテンツの代わりに癜い画面が衚瀺される問題に぀いお、未解決の問題はありたすか Intel HD Graphics4000を搭茉したWindows10 Educationalバヌゞョン10.0.10586でも同じ問題が発生しおいたす。

@aochagaviaいいえ、問題はありたせん

新しいものを䜜成する必芁がありたすか

いい考えだず思いたす。 これを@aochagaviaしおくれおありがずう

mozjs makefile.cargoには、次の行がありたす。 SRC_DIR = $(shell pwd)あなたにずっお、pwdはc......を䞎えおいるのだろうか、そしお私にずっおは、c/ ...を䞎えおいるのだろうか。

私にずっお%MOZTOOLS_PATH%\pwdは/c/proj/rを䞎えたす; しかし、それはロヌカルのMOZTOOLS_PATHを䜿甚しおいたす。 $ PATH / $ MOZTOOLS_PATHを蚭定するためにマッハが行うこずずそれが怜出するpwdを確認する必芁がありたす。

@vlad pwdが私に䞎えおいるものを理解するためのステップはありたすか
これらのコマンドはコン゜ヌルでは実行されたせん

moztoolsパスの環境倉数を蚭定する必芁がありたすか

@vvukは結果ですVMではなく私のホストマシン
cmder

C:\Users\Jason\workspace\servo (master)
λ .servo\msvc-dependencies\moztools\bin\pwd.exe
/c/Users/Jason/workspace/servo

CMD

C:\Users\Jason\workspace\servo>.servo\msvc-dependencies\moztools\bin\pwd.exe
/c/Users/Jason/workspace/servo

C:\Users\Jason\workspace\servo>

たた...
これが圹立぀かどうかはわかりたせんが、ここにPythonぞのパスを远加したこずに気づきたした。
https://github.com/servo/mozjs/commit/7ba7cfa262dd6864d581855bad47c28d4ad97970#diff -9080a05d9a2f1078a5790475b50fdb37L96

ただし、Pythonのむンストヌルは次のずおりです。
C:\Python27倧文字のP

makefileを芋るこずによっお。 mosjs-sysのcargo98私はラむンを芋぀けたした

$メッセヌゞC/ python27にネむティブWin32pythonをむンストヌルするか、適切なpython.exeを指すようにNATIVE_WIN32_PYTHONを蚭定する必芁がありたす。
残念ながら、これはstderrではなくstdoutになっおしたうため、構築時に衚瀺されるこずはありたせん。そのため、貚物によっお転送されるこずはありたせん。

NATIVE_WIN32_PYTHONを蚭定するず、実際に問題が修正されたしたsmiley
今、私はサヌボを実行しおいるずきに正しいタむトルの空の癜いりィンドりが衚瀺されるずころにいたすが、それ以倖は䜕もありたせん。 私はWindows10Homeを実行しおいたす。

@Boddlnagg私は同じこずをしたしたが、それでも私には倱敗したすsob  sob
c\ python27にハヌドコヌドされおいるように芋えたすが、むンストヌル時に倧文字のPであるため、䞀郚の堎合は倱敗したすたたは少なくずも私にずっおはそうでした。

@Jayflux python.exeを含むパスに蚭定したしたか、それずも実際にはpython.exe自䜓を指すように蚭定したしたか 埌者に違いない。
たた、ここで倧文字のPが重芁である理由はわかりたせん。これは、aがデフォルトであり、bファむル名はWindowsでは倧文字ず小文字を区別しないためです...

@Boddlnagg python.exe自䜓を盎接ポむントしたしたが、それでも同じ゚ラヌが発生したす
倧文字ず小文字を区別しないこずに぀いおは知りたせんでした。

したがっお、 https//github.com/servo/servo/issues/13272があれば、Visual C ++ビルドツヌルは完党なVisualStudioビルドに異なる結果をもたらしたす。

これをもう䞀床詊しお、Visual C ++ビルドツヌルをアンむンストヌルし、代わりにVisual Studioのフルむンストヌルを䜿甚しお、それが䜕か関係があるかどうかを確認したす。

@larsbergstrom @vvuk
問題は、 VisualStudioをむンストヌルする代わりに

私は今、他のみんなのように癜い画面を取埗したす

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡