Skip to content

How to install the required dependencies

Zeioth edited this page Jun 1, 2024 · 95 revisions

You can install all the dependencies with the next commands.

Arch linux

# You can use any AUR helper
paru -S --needed "gcc" "binutils" "dotnet-runtime" "dotnet-sdk" "aspnet-runtime" "mono" "jdk-openjdk" "dart" "kotlin" "elixir" "npm" "nodejs" "typescript" "make" "go" "nasm" "r" "nuitka" "python" "ruby" "perl" "lua" "pyinstaller" "swift-language" "flutter-bin" "gcc-fortran" "fortran-fpm-bin"

Evil corporation Apple MacOS

sudo brew install "gcc" "binutils" "dotnet" "mono" "openjdk" "dart-sdk" "kotlin" "elixir" "node" "typescript" "make" "rustup-init" "rust" "go" "nasm" "r" "ruby" "perl" "lua" "swift" "pyinstaller" "doxygen"; sudo brew install --cask "dotnet-sdk" "flutter"; pip install "Nuitka"

Ubuntu / Evil corporation Microsoft Windows (WSL)

sudo apt update; sudo apt install --install-if-missing "gcc-defaults" "binutils" "dotnet8" "monodevelop" "java-common" "nasm" "r-base" "rustup" "rustc" "golang" "python" "ruby" "perl" "lua5.3" "kotlin" "elixir" "make" "nodejs" "npm" "node-typescript" "nuitka"; pip install "pyinstaller"; sudo snap install --classic "flutter"

Termux (Android)

pkg update; pkg install "tur-repo"; pkg install "mono" "openjdk-17" "dart" "kotlin" "elixir" "nodejs" "make" "rust" "golang" "nasm" "python" "ruby" "perl" "liblua52" "swift" "gcc-default" "binutils-libs" "doxygen"; pip install "Nuitka"; npm install -g "jest" "typescript"

You will have to manually install flutter, r, and dotnet as there is currently no termux package for them.

Fedora

sudo dnf install "rustup" "gcc" "binutils" "dotnet6.0" "dotnet-runtime-6.0" "dotnet-sdk-6.0" "aspnetcore-runtime-6.0" "mono-complete" "java-21-openjdk" "elixir" "nodejs" "npm" "typescript" "make" "golang" "nasm" "R-rlang" "ruby" "perl" "lua" "swift-lang" "gcc-gfortran"; pip install "Nuitka" "pyinstaller"; npm install -g "typescript"

Checking you did it well

:lua require("compiler") -- To ensure compiler.nvim is loaded
:checkhealth compiler

More info

  • If you are on a Linux distro but it is not listed here, you can still use compiler.nvim, but you will have to search for the package equivalents of your distro. An easy way to do this is to ask chatgpt or similar to convert the package names to your distro.

The list of shame

Certain distros don't ship certain packages (yet). So you won't be able to use those compilers unless you find a way install them manually.

OS missing packages
MacOS fpm
Ubuntu pyinstaller, swift, fpm
Termux flutter, r, dotnet, fpm
Fedora dart, flutter, kotlin, fpm