Kääntäminen Linuxille
- Asenna
curl:- Arch:
sudo pacman -S --needed curl - Debian, Ubuntu:
sudo apt install curl - Fedora:
sudo dnf install curl - Gentoo:
sudo emerge net-misc/curl
- Arch:
- Asenna
uv:curl -LsSf https://astral.sh/uv/install.sh | sh - Asenna
rustup:curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - Käynnistä shell uudelleen varmistaaksesi, että
cargoon käytettävissä - Asenna muut riippuvuudet:
./mach bootstrap - Käännä servoshell:
./mach build
Tukemattomat jakelut
Jos ./mach boostrap ilmoittaa, että jakelusi ei ole tuettu, sinun täytyy asentaa riippuvuudet manuaalisesti.
Alla on ohjeita käännösriippuvuuksien asentamiseen erilaisille jakelutyypeille.
Jos jakelusi ei ole listalla, suositellaan sovittamaan lista järjestelmäsi pakettinimille.
Päivitykset tähän listaan ovat erittäin tervetulleita!
Arch ja Manjaro
-
sudo pacman -S --needed curl -
sudo pacman -S --needed base-devel git mesa cmake libxmu pkg-config ttf-fira-sans harfbuzz ccache llvm clang autoconf2.13 gstreamer gstreamer-vaapi gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly vulkan-icd-loader wireshark-cli
Debian-tyyppiset
(mukaan lukien elementary OS, KDE neon, Linux Mint, Pop!_OS, Raspbian, TUXEDO OS, Ubuntu)
sudo apt install curl
sudo apt install build-essential ca-certificates ccache clang cmake curl g++ git gperf gstreamer1.0-libav gstreamer1.0-plugins-bad gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools libdbus-1-dev libegl1-mesa-dev libfreetype6-dev libges-1.0-dev libgl1-mesa-dri libgles2-mesa-dev libglib2.0-dev libgstreamer-plugins-bad1.0-dev libgstreamer-plugins-base1.0-dev libgstrtspserver-1.0-dev libharfbuzz-dev liblzma-dev libudev-dev libunwind-dev libvulkan1 libx11-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-x11-0 libxkbcommon0 libxmu-dev libxmu6 llvm-dev m4 xorg-dev
Huom: Ubuntu-pohjaisissa jakelussa varmista, että sisällytät myös paketin libgstreamer-plugins-good1.0-dev yllä lueteltujen pakettien lisäksi.
Fedora-tyyppiset
sudo dnf install cabextract ccache clang clang-libs cmake dbus-devel expat-devel fontconfig-devel freetype-devel gcc-c++ glib2-devel gperf gstreamer1-devel gstreamer1-plugins-bad-free-devel gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-ugly-free harfbuzz-devel libjpeg-turbo libjpeg-turbo-devel libtool libunwind-devel libX11-devel libXcursor-devel libXi-devel libxkbcommon libxkbcommon-x11 libXmu-devel libXrandr-devel llvm mesa-libEGL-devel mesa-libGL-devel ncurses-devel python3-devel rpm-build ttmkfdir vulkan-loader zlib-ng
Gentoo-tyyppiset
sudo emerge net-misc/curl media-libs/freetype media-libs/mesa dev-util/gperf dev-libs/openssl media-libs/harfbuzz dev-util/ccache sys-libs/libunwind x11-libs/libXmu x11-base/xorg-server sys-devel/clang media-libs/gstreamer media-libs/gst-plugins-base media-libs/gst-plugins-good media-libs/gst-plugins-bad media-libs/gst-plugins-ugly media-libs/vulkan-loader
openSUSE
sudo zypper install libX11-devel libexpat-devel Mesa-libEGL-devel Mesa-libGL-devel cabextract cmake dbus-1-devel fontconfig-devel freetype-devel gcc-c++ git glib2-devel gperf harfbuzz-devel libXcursor-devel libXi-devel libXmu-devel libXrandr-devel libopenssl-devel rpm-build ccache llvm-clang libclang autoconf213 gstreamer-devel gstreamer-plugins-base-devel gstreamer-plugins-good gstreamer-plugins-bad-devel gstreamer-plugins-ugly vulkan-loader libvulkan1
Void Linux
sudo xbps-install bzip2-devel cabextract ccache clang cmake cmake dbus-devel expat-devel fontconfig-devel freetype-devel gcc glib-devel glu-devel gperf gst-plugins-bad1-devel gst-plugins-base1-devel gst-plugins-good1 gst-plugins-ugly1 gstreamer1-devel harfbuzz-devel libtool libunwind-devel libX11-devel libXcursor-devel libXi-devel libxkbcommon libxkbcommon-x11 libXmu-devel libXrandr-devel MesaLib-devel ncurses-devel pkg-config vulkan-loader
Vianmääritys
Katso Yleinen vianmääritys -osio, jos käännöksessä on ongelmia eikä ongelmaasi ole listattu alla.
build: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.39' not found
Tämä kiertotie soveltuu, kun käännät Servoa nix:llä muilla Linux-jakelulla kuin NixOS:lla.
Virhe tarkoittaa, että jakelun glibc-versio on vanhempi kuin nixpkgs-paketissa.
Muuta shell.nix-tiedoston loppuun rivi if ! [ -e /etc/NIXOS ]; then muotoon if false; then poistaaksesi shell.nix-tuen binääritulosteille, jotka eivät riipu nix-kaupasta.