Inhaltsverzeichnis
Warum muss Linux Quellcode kompilieren?
Linux-Kompilierungs-Quellcode-Tutorial
Heim Betrieb und Instandhaltung Betrieb und Wartung von Linux Warum muss Linux Quellcode kompilieren?

Warum muss Linux Quellcode kompilieren?

Mar 17, 2023 am 10:21 AM
linux 编译

Gründe: 1. Es gibt viele Versionen von Linux, aber jede Version verwendet unterschiedliche Software- oder Kernelversionen, und die Umgebung, auf der das Binärpaket basiert, läuft möglicherweise nicht unbedingt normal, sodass die meisten Softwareprogramme den Quellcode direkt für die Kompilierung und Installation bereitstellen. 2. Einfache Anpassung an unterschiedliche Anforderungen. 3. Praktisch für Betrieb und Wartung sowie für die Entwicklerwartung; der Quellcode kann als Binärdatei gepackt werden, aber das Packen dieser Software erfordert kostspielige zusätzliche Arbeiten, einschließlich Wartung. Wenn es sich also um Quellcode handelt, wird der Softwarehersteller ihn direkt warten.

Warum muss Linux Quellcode kompilieren?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.

Warum muss Linux Quellcode kompilieren?

Im Allgemeinen umfassen unsere Softwareinstallationsmethoden Yum (RPM) und Quellcodekompilierung, um einige Software zu installieren. Es gibt mehrere Gründe, den Quellcode zum Kompilieren und Installieren von Software zu wählen:

  • Um unterschiedliche Betriebssysteme zu erfüllen. Wir haben viele Linux-Versionen, aber jede Version verwendet unterschiedliche Software- oder Kernel-Versionen und die Umgebung, von der unsere Binärpakete abhängen nicht richtig funktionieren, daher stellt die meiste Software den Quellcode direkt zur Verfügung!

  • Einfache Anpassung an unterschiedliche Anforderungen. Die meisten Binärcodes können mit einem Klick installiert werden, sodass der Freiheitsgrad nicht hoch ist.

  • Es ist praktisch für Betrieb und Wartung sowie für die Entwicklerwartung. Unser Quellcode kann als Binärdatei gepackt werden, aber das Packen dieser Software erfordert kostspielige zusätzliche Arbeiten, einschließlich Wartung. Wenn es sich also um Quellcode handelt, wird dies direkt vom Softwarehersteller durchgeführt Wartung, aber wenn es sich um eine Binärdatei handelt, wird sie normalerweise vom Linux-Distributor bereitgestellt.

Linux-Kompilierungs-Quellcode-Tutorial

Fast die gesamte Software unter Linux ist GPL-lizenziert, sodass fast jede Software Quellcode bereitstellt.

Um unter Linux ausgeführt zu werden, muss eine Software eine Binärdatei sein. Wenn wir den Software-Quellcode erhalten, müssen wir ihn daher in eine Binärdatei kompilieren, damit er unter Linux ausgeführt werden kann.

1. Software-Kompilierungsprozess

Es sind zwei Schritte erforderlich, um den Quellcode in eine Binärdatei zu kompilieren, die unter Linux ausgeführt werden kann:

  • Verwenden Sie den gcc-Compiler, um den Quellcode in eine Objektdatei zu kompilieren

  • Verwenden Sie gcc erneut. Der Compiler verknüpft die Objektdatei in eine Binärdatei

Dieser Vorgang scheint einfach, ist es aber nicht. Der Quellcode einer Software ist oft in mehreren Quelldateien gekapselt. Darüber hinaus weisen diese Dateien komplizierte Abhängigkeiten auf, und die Kompilierung muss in strikter Übereinstimmung mit der angegebenen Reihenfolge erfolgen, was zweifellos die Schwierigkeit der Kompilierung erhöht. Glücklicherweise kann uns der Befehl make dabei helfen, den Kompilierungsprozess zu vereinfachen.

Der gesamte Kompilierungsprozess ist in der Makefile-Datei zusammengefasst (womit dem Befehl make mitgeteilt wird, wie das Programm kompiliert und verknüpft werden soll). Wenn der Befehl make ausgeführt wird, sucht make nach der Makefile-Datei im aktuellen Verzeichnis und schließt die gesamte Kompilierung entsprechend ab den Anforderungen im Prozess entsprechen.

Die Makefile-Datei wird durch den Befehl configure generiert. Beim Ausführen des Befehls „configure“ generiert „configure“ dynamisch ein für dieses System geeignetes Makefile basierend auf der aktuellen Systemumgebung zur Verwendung durch den Befehl „make“.

2. Schritte zur Installation des Linux-Quellcodes

  • Holen Sie sich den Quellcode
    Laden Sie den Quellcode der Software nach /usr/local/ herunter und entpacken Sie ihn.

  • Sehen Sie sich die INSTALL- und README-Dateien an.
    Sehen Sie sich nach der Dekomprimierung die INSTALL- und README-Dateien an. Diese beiden Dateien beschreiben die Installationsmethode und Vorsichtsmaßnahmen dieser Software im Detail.

  • Erstellen Sie ein Makefile.
    Führen Sie den Befehl configure aus, um ein Makefile zu generieren.

  • Kompilieren
    Führen Sie den Befehl make clean;make aus, um den Quellcode in eine Binärdatei zu kompilieren.
    PS: Der Befehl make clean wird verwendet, um die bei der letzten Kompilierung generierten Zieldateien zu löschen. Dieser Schritt ist optional, aber um den Erfolg der Kompilierung sicherzustellen, ist es besser, ihn hinzuzufügen. Verhindern Sie Kompilierungsfehler aufgrund verbleibender Objektdateien in der Software.

  • Installation
    Führen Sie den Befehl make install aus, um die im vorherigen Schritt kompilierte Binärdatei im angegebenen Verzeichnis zu installieren.

3. Installationsdemo

1) Geben Sie /usr/local/ ein und erstellen Sie das Memcached-Verzeichnis:

cd /usr/local/
mkdir memcached
Nach dem Login kopieren

2) Laden Sie den Quellcode von Memcached herunter

wget http://memcached.org/files/memcached-1.4.29.tar.gz
Nach dem Login kopieren

3) Entpacken der Quellcode

tar -zxvf memcached-1.4.29.tar.gz
Nach dem Login kopieren

4) Führen Sie configure aus, um ein Makefile zu generieren

./configure --prefix=/usr/local/memcached/
Nach dem Login kopieren

Zu diesem Zeitpunkt wird ein Makefile im aktuellen Verzeichnis generiert.

Hinweis: Der Parameter –prefix gibt das Softwareinstallationsverzeichnis an. Wenn der Befehl make install ausgeführt wird, wird die Software in diesem Pfad installiert. Wenn dieser Parameter und das Präfix nicht angegeben sind, wird die ausführbare Datei standardmäßig in /usr/local/bin abgelegt und die Bibliothek Die Datei wird standardmäßig in /usr/local/lib abgelegt, die Konfigurationsdatei wird standardmäßig in /usr/local/etc abgelegt. Andere Ressourcendateien werden in /usr/local/share abgelegt.

5) Führen Sie make aus, lesen Sie die Anweisungen aus dem Makefile und kompilieren Sie den Quellcode

make
Nach dem Login kopieren

此时make会读取Makefile文件,将源码编译成二进制文件,并存放在当前目录下。

执行这一步之前可以先进行清理作业:

make clean && make uninstall
Nach dem Login kopieren

6)执行make install,将软件安装至指定目录

make install
Nach dem Login kopieren

此时二进制文件会被安装到先前configure prefix参数设置的路径中去。
安装完成!

4、cmake命令(了解)

cmake就是一个与make同级别的编译工具,只不过它依靠的不是Makefile作为编译规则,而是根据CMakeLists.txt来编译的。
CMake是一个比make更高级的编译配置工具,它可以根据不同平台、不同的编译器,通过编写CMakeLists.txt,可以控制生成的Makefile,从而控制编译过程。

CMake自动生成的Makefile不仅可以通过make命令构建项目生成目标文件,还支持安装(make install)、测试安装的程序是否能正确执行(make test,或者ctest)、生成当前平台的安装包(make package)、生成源码包(make package_source)、产生Dashboard显示数据并上传等高级功能,只要在CMakeLists.txt中简单配置,就可以完成很多复杂的功能,包括写测试用例。
如果有嵌套目录,子目录下可以有自己的CMakeLists.txt。

相关推荐:《Linux视频教程

Das obige ist der detaillierte Inhalt vonWarum muss Linux Quellcode kompilieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wofür ist Linux eigentlich gut? Wofür ist Linux eigentlich gut? Apr 12, 2025 am 12:20 AM

Linux eignet sich für Server, Entwicklungsumgebungen und eingebettete Systeme. 1. Als Serverbetriebssystem ist Linux stabil und effizient und wird häufig zur Bereitstellung von Anwendungen mit hoher Konreise verwendet. 2. Als Entwicklungsumgebung bietet Linux effiziente Befehlszeilen -Tools und Paketmanagementsysteme, um die Entwicklungseffizienz zu verbessern. 3. In eingebetteten Systemen ist Linux leicht und anpassbar und für Umgebungen mit begrenzten Ressourcen geeignet.

So sehen Sie den Instanznamen von Oracle So sehen Sie den Instanznamen von Oracle Apr 11, 2025 pm 08:18 PM

Es gibt drei Möglichkeiten, Instanznamen in Oracle anzuzeigen: Verwenden Sie den "SQLPLUS" und "Instance_name aus v $ Instance". Befehle in der Befehlszeile. Verwenden Sie den "show Instance_name;" Befehl in SQL*Plus. Überprüfen Sie die Umgebungsvariablen (Oracle_sid unter Linux) über den Task -Manager des Betriebssystems, den Oracle Enterprise Manager oder über das Betriebssystem.

Verwenden von Docker mit Linux: eine umfassende Anleitung Verwenden von Docker mit Linux: eine umfassende Anleitung Apr 12, 2025 am 12:07 AM

Die Verwendung von Docker unter Linux kann die Entwicklung und die Bereitstellungseffizienz verbessern. 1. Installieren Sie Docker: Verwenden Sie Skripte, um Docker auf Ubuntu zu installieren. 2. Überprüfen Sie die Installation: Führen Sie die Sudodockerrunhello-Welt aus. 3. Basisnutzung: Erstellen Sie einen Nginx-Container-Dockerrun-Namemy-Nginx-P8080: 80-DNGinx. 4. Erweiterte Verwendung: Erstellen Sie ein benutzerdefiniertes Bild, erstellen und führen Sie mit Dockerfile aus. 5. Optimierung und Best Practices: Befolgen Sie Best Practices zum Schreiben von Dockerfiles mit mehrstufigen Builds und DockerComponpose.

Was tun, wenn der Port Apache80 belegt ist Was tun, wenn der Port Apache80 belegt ist Apr 13, 2025 pm 01:24 PM

Wenn der Port -80 -Port der Apache 80 besetzt ist, lautet die Lösung wie folgt: Finden Sie den Prozess, der den Port einnimmt, und schließen Sie ihn. Überprüfen Sie die Firewall -Einstellungen, um sicherzustellen, dass Apache nicht blockiert ist. Wenn die obige Methode nicht funktioniert, konfigurieren Sie Apache bitte so, dass Sie einen anderen Port verwenden. Starten Sie den Apache -Dienst neu.

So starten Sie Apache So starten Sie Apache Apr 13, 2025 pm 01:06 PM

Die Schritte zum Starten von Apache sind wie folgt: Installieren Sie Apache (Befehl: sudo apt-Get-Get-Installieren Sie Apache2 oder laden Sie ihn von der offiziellen Website herunter). (Optional, Linux: sudo systemctl

So beginnen Sie mit der Überwachung von Oracle So beginnen Sie mit der Überwachung von Oracle Apr 12, 2025 am 06:00 AM

Die Schritte zum Starten eines Oracle -Listeners sind wie folgt: Überprüfen

So überwachen Sie die NGINX SSL -Leistung auf Debian So überwachen Sie die NGINX SSL -Leistung auf Debian Apr 12, 2025 pm 10:18 PM

In diesem Artikel wird beschrieben, wie die SSL -Leistung von NGINX -Servern auf Debian -Systemen effektiv überwacht wird. Wir werden Nginxexporter verwenden, um Nginx -Statusdaten in Prometheus zu exportieren und sie dann visuell über Grafana anzeigen. Schritt 1: Konfigurieren von Nginx Erstens müssen wir das Modul stub_status in der nginx -Konfigurationsdatei aktivieren, um die Statusinformationen von Nginx zu erhalten. Fügen Sie das folgende Snippet in Ihre Nginx -Konfigurationsdatei hinzu (normalerweise in /etc/nginx/nginx.conf oder deren inklusive Datei): location/nginx_status {stub_status

So richten Sie im Debian -System einen Recyclingbehälter ein So richten Sie im Debian -System einen Recyclingbehälter ein Apr 12, 2025 pm 10:51 PM

In diesem Artikel werden zwei Methoden zur Konfiguration eines Recycling -Bin in einem Debian -System eingeführt: eine grafische Schnittstelle und eine Befehlszeile. Methode 1: Verwenden Sie die grafische Schnittstelle Nautilus, um den Dateimanager zu öffnen: Suchen und starten Sie den Nautilus -Dateimanager (normalerweise als "Datei") im Menü Desktop oder Anwendungen. Suchen Sie den Recycle Bin: Suchen Sie nach dem Ordner recycelner Behälter in der linken Navigationsleiste. Wenn es nicht gefunden wird, klicken Sie auf "Andere Speicherort" oder "Computer", um sie zu suchen. Konfigurieren Sie Recycle Bin-Eigenschaften: Klicken Sie mit der rechten Maustaste auf "Recycle Bin" und wählen Sie "Eigenschaften". Im Eigenschaftenfenster können Sie die folgenden Einstellungen einstellen: Maximale Größe: Begrenzen Sie den im Recycle -Behälter verfügbaren Speicherplatz. Aufbewahrungszeit: Legen Sie die Erhaltung fest, bevor die Datei automatisch im Recyclingbehälter gelöscht wird

See all articles