Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Kääntäminen Windowsille

  • Lataa uv, choco ja rustup
    • Valitse Quick install via the Visual Studio Community installer
  • Varmista Visual Studio Installerissa, että seuraavat komponentit on asennettu:
    • Windows 10/11 SDK (anything >= 10.0.19041.0) (Microsoft.VisualStudio.Component.Windows{10, 11}SDK.{>=19041})
    • MSVC v143 - VS 2022 C++ x64/x86 build tools (Latest) (Microsoft.VisualStudio.Component.VC.Tools.x86.x64)
    • C++ ATL for latest v143 build tools (x86 & x64) (Microsoft.VisualStudio.Component.VC.ATL)
  • Käynnistä shell uudelleen varmistaaksesi, että cargo on käytettävissä
  • Asenna muut riippuvuudet: .\mach bootstrap
  • Käännä servoshell: .\mach build

Emme suosittele useamman kuin yhden Visual Studio -version asentamista. Servo yrittää etsiä oikean Visual Studio -version, mutta vain yhden version asentaminen vähentää virheiden riskiä.

Vianmääritys

Katso Yleinen vianmääritys -osio, jos käännöksessä on ongelmia eikä ongelmaasi ole listattu alla.

Cannot run mach in a path on a case-sensitive file system on Windows.
  • Avaa komentokehote tai PowerShell ylläpitäjänä (Win+X, A)
  • Poista kirjainkoon herkkyys Servo-repollesi:
    fsutil file SetCaseSensitiveInfo X:\path\to\servo disable
Could not find DLL dependency: api-ms-win-crt-runtime-l1-1-0.dll
DLL file `api-ms-win-crt-runtime-l1-1-0.dll` not found!

Etsi polku tiedostoon Redist\ucrt\DLLs\x64\api-ms-win-crt-runtime-l1-1-0.dll, esim. C:\Program Files (x86)\Windows Kits\10\Redist\ucrt\DLLs\x64\api-ms-win-crt-runtime-l1-1-0.dll.

Aseta sitten WindowsSdkDir-ympäristömuuttuja polkuun, joka sisältää Redist, esim. C:\Program Files (x86)\Windows Kits\10.

thread 'main' panicked at 'Unable to find libclang: "couldn\'t find any valid shared libraries matching: [\'clang.dll\', \'libclang.dll\'], set the `LIBCLANG_PATH` environment variable to a path where one of these files can be found (invalid: [(C:\\Program Files\\LLVM\\bin\\libclang.dll: invalid DLL (64-bit))])"', C:\Users\me\.cargo\registry\src\...

rustup on ehkä asennettu 32-bittisellä oletusisännällä 64-bittisen oletusisännän sijaan, jota Servo tarvitsee. Tarkista oletusisäntä komennolla rustup show, aseta sitten oletusisäntä:

> rustup set default-host x86_64-pc-windows-msvc

ERROR: GetShortPathName returned a long path name: `C:/PROGRA~2/Windows Kits/10/`. Use `fsutil file setshortname' to create a short name for any components of this path that have spaces.

SpiderMonkey (mozjs) vaatii 8.3-tiedostonimet käyttöön Windowsilla (#26010).

  • Avaa komentokehote tai PowerShell ylläpitäjänä (Win+X, A)
  • Ota 8.3-tiedostonimien luonti käyttöön: fsutil behavior set disable8dot3 0
  • Poista ja asenna uudelleen mikä tahansa, joka sisältää epäonnistuvat polut, kuten Visual Studio tai Windows SDK — tämä on helpompaa kuin 8.3-tiedostonimien lisääminen käsin
= note: lld-link: error: undefined symbol: __std_search_1 >>> referenced by D:\a\mozjs\mozjs\mozjs-sys\mozjs\intl\components\src\NumberFormatterSkeleton.cpp:157

Tällaiset ongelmat voivat ilmetä mozjs:n päivityksen yhteydessä, koska päivitys voi riippua uudemmasta MSVC:stä (muista, että vaadimme “Latest” kohdassa set up your environment!). Ratkaise ongelma käynnistämällä Visual Studio Installer ja asentamalla kaikki saatavilla olevat päivitykset.