--- title: Linux weight: 10 description: "Documentation RustDesk sur Linux. Consultez les guides d'installation, de configuration, de déploiement et de dépannage." keywords: ["build rustdesk linux", "rustdesk linux build", "rustdesk vcpkg linux", "rustdesk cargo run linux", "rustdesk ubuntu build"] --- # Comment compiler/build sous Linux ## De quoi avez-vous besoin avant de compiler sous Linux ? Pour compiler RustDesk sous Linux, il vous faut les dependances de developpement de votre distribution, un `vcpkg` fonctionnel, Rust installe via `rustup` et la bibliotheque partagee Sciter dans le dossier de sortie avant de lancer `cargo`. ## Checklist de build Linux - Installez le compilateur et les dependances desktop de votre distribution. - Clonez et initialisez `vcpkg`, puis exportez `VCPKG_ROOT`. - Installez Rust avec `rustup` et chargez l'environnement cargo. - Clonez le depot RustDesk avec ses submodules. - Telechargez `libsciter-gtk.so` dans `target/debug`. - Executez `cargo run` a la racine du projet. ## Ubuntu 18 (Debian 10) ```sh sudo apt install -y g++ gcc git curl wget nasm yasm libgtk-3-dev clang libxcb-randr0-dev libxdo-dev libxfixes-dev libxcb-shape0-dev libxcb-xfixes0-dev libasound2-dev libpulse-dev cmake ``` ## Fedora 28 (CentOS 8) ```sh sudo yum -y install gcc-c++ git curl wget nasm yasm gcc gtk3-devel clang libxcb-devel libxdo-devel libXfixes-devel pulseaudio-libs-devel cmake alsa-lib-devel ``` ## Arch (Manjaro) ```sh sudo pacman -Syu --needed unzip git cmake gcc curl wget yasm nasm zip make pkg-config clang gtk3 xdotool libxcb libxfixes alsa-lib pulseaudio ``` ## Installer vcpkg ```sh git clone https://github.com/microsoft/vcpkg cd vcpkg git checkout 2023.10.19 cd .. vcpkg/bootstrap-vcpkg.sh export VCPKG_ROOT=$PWD/vcpkg vcpkg/vcpkg install --x-install-root="$VCPKG_ROOT/installed" ``` ## Corriger libvpx (Pour Fedora) ```sh cd vcpkg/buildtrees/libvpx/src cd * ./configure sed -i 's/CFLAGS+=-I/CFLAGS+=-fPIC -I/g' Makefile sed -i 's/CXXFLAGS+=-I/CXXFLAGS+=-fPIC -I/g' Makefile make cp libvpx.a $VCPKG_ROOT/installed/x64-linux/lib/ cd ``` ## Construire ```sh curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source $HOME/.cargo/env git clone --recurse-submodules https://github.com/rustdesk/rustdesk cd rustdesk mkdir -p target/debug wget https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so mv libsciter-gtk.so target/debug # Note: VCPKG_ROOT still set cargo run ```