Build Anweisungen (Linux)
Befolge die folgenden Richtlinien für die Erstellung von Electron selbst unter Linux, um eigene Electron-Binärdateien zu erstellen. Wie du deinen Anwendungscode mit den vorgefertigten Electron-Binärdateien bündelst und verteilst, findest du in der Anleitung Anwendungsdistribution.
Vorrausetzungen
- Mindestens 25 GB Festplattenspeicher und 8 GB Arbeitsspeicher.
- Python >= 3.7.
- Node.js. Es gibt verschiedene Möglichkeiten, Node zu installieren. Du kannst den Quellcode von nodejs.org herunterladen und kompilieren. Dies ermöglicht die Installation von Node in deinem eigenen Home-Verzeichnis als Standardbenutzer. Oder versuche es mit Repositories wie NodeSource.
- Clang 3.4 oder höher.
- Entwicklungsheader von GTK 3 und libnotify.
Unter Ubuntu >= 20.04 installiere die folgenden Bibliotheken:
$ sudo apt-get install build-essential clang libdbus-1-dev libgtk-3-dev \
libnotify-dev libasound2-dev libcap-dev \
libcups2-dev libxtst-dev \
libxss1 libnss3-dev gcc-multilib g++-multilib curl \
gperf bison python3-dbusmock openjdk-8-jre
Unter Ubuntu < 20.04 installiere die folgenden Bibliotheken:
$ sudo apt-get install build-essential clang libdbus-1-dev libgtk-3-dev \
libnotify-dev libgnome-keyring-dev \
libasound2-dev libcap-dev libcups2-dev libxtst-dev \
libxss1 libnss3-dev gcc-multilib g++-multilib curl \
gperf bison python-dbusmock openjdk-8-jre
Unter RHEL / CentOS, Installiere die folgenden Bibliotheken:
$ sudo yum install clang dbus-devel gtk3-devel libnotify-devel \
libgnome-keyring-devel xorg-x11-server-utils libcap-devel \
cups-devel libXtst-devel alsa-lib-devel libXrandr-devel \
nss-devel python-dbusmock openjdk-8-jre
Unter Fedora, Installiere folgende Bibliotheken:
$ sudo dnf install clang dbus-devel gperf gtk3-devel \
libnotify-devel libgnome-keyring-devel libcap-devel \
cups-devel libXtst-devel alsa-lib-devel libXrandr-devel \
nss-devel python-dbusmock
Unter Arch Linux / Manjaro, Installiere folgende Bibliotheken:
$ sudo pacman -Syu base-devel clang libdbus gtk2 libnotify \
libgnome-keyring alsa-lib libcap libcups libxtst \
libxss nss gcc-multilib curl gperf bison \
python2 python-dbusmock jdk8-openjdk
Andere Distributionen bieten möglicherweise ähnliche Pakete zur Installation über Paket Manager wie pacman. Oder man kompiliert aus dem Quellcode.
Cross compilation
If you want to build for an arm
target you should also install the following dependencies:
$ sudo apt-get install libc6-dev-armhf-cross linux-libc-dev-armhf-cross \
g++-arm-linux-gnueabihf
Ähnlich für arm64
, installiere Folgendes:
$ sudo apt-get install libc6-dev-arm64-cross linux-libc-dev-arm64-cross \
g++-aarch64-linux-gnu
And to cross-compile for arm
or targets, you should pass the target_cpu
parameter to gn gen
:
$ gn gen out/Testing --args='import(...) target_cpu="arm"'
Building
Siehe Build Instruktionen: GN
Problemlösungen
Fehler beim Laden gemeinsamer Bibliotheken: libtinfo.so.5
Prebuilt clang
will try to link to libtinfo.so.5
. Depending on the host architecture, symlink to appropriate libncurses
:
$ sudo ln -s /usr/lib/libncurses.so.5 /usr/lib/libtinfo.so.5
Erweiterte Themen
The default building configuration is targeted for major desktop Linux distributions. To build for a specific distribution or device, the following information may help you.
Using system clang
instead of downloaded clang
binaries
By default Electron is built with prebuilt clang
binaries provided by the Chromium project. If for some reason you want to build with the clang
installed in your system, you can specify the clang_base_path
argument in the GN args.
For example if you installed clang
under /usr/local/bin/clang
:
$ gn gen out/Testing --args='import("//electron/build/args/testing.gn") clang_base_path = "/usr/local/bin"'
Using compilers other than clang
Building Electron with compilers other than clang
is not supported.