Heim >Backend-Entwicklung >PHP-Tutorial >Installation der unter Linux entwickelten PHP-Erweiterung

Installation der unter Linux entwickelten PHP-Erweiterung

WBOY
WBOYOriginal
2016-07-29 09:15:10955Durchsuche

Eindrücke aus dem Vorwort

Die Worte eines Freundes aus Maimai machen mir die Vorteile eines Computerstudiums immer bewusster. Je länger ich programmiere, desto mehr spüre ich die Bedeutung Es ist wie ein Berg, der nicht umgangen werden kann, mit Windungen und Wendungen, aber Sie werden diesem Berg immer begegnen. Nur wenn Sie sich den Schwierigkeiten stellen und sie mit aller Kraft erklimmen Fahren Sie auf dem Weg fort, auf dem Sie sich befinden Ich stimme voll und ganz zu, je länger Sie programmieren, desto mehr müssen Sie die zugrunde liegenden Ebenen studieren, um sich zu verbessern. Das nächste Ziel besteht also darin, den PHP-Quellcode systematisch zu studieren. Zufällig lernte ich für die Aufnahmeprüfung für die Erwachsenenbildung auf C und der Lehrer war ein NB-Akademiker. Der Stapel Bücher, die angeblich C gelesen haben, liegt höher als der Schreibtisch.

Vorbereitung

Ich habe im Internet herausgefunden, dass es nicht viele und vollständige Informationen zur PHP-Erweiterungsentwicklung gibt und es kein etabliertes Forum gibt. Es scheint, dass in diesem Bereich keine große Nachfrage besteht.

Zuerst müssen Sie den PHP-Quellcode herunterladen, der von git/svn oder der offiziellen Website heruntergeladen werden kann. Ich habe ihn von der offiziellen Website heruntergeladen, da es im Internet heißt, dass einige Quellcodes unter git nicht über das PHPize-Tool verfügen (Ich habe es nicht ausprobiert) phpize wird verwendet, um PHP-Erweiterungen modular zu erweitern.

Start

Geben Sie den heruntergeladenen PHP-Quellcode ein

Im ext-Verzeichnis des PHP-Quellcodes befindet sich eine ext_skel-Datei, mit der Sie ganz einfach ein PHP-Erweiterungsframework erstellen können

und das ext-Verzeichnis cd ext/

eingeben

./ext_skel –extname =myext

Verzeichnis myext
wird erstellt Basisdateien erstellen: config.m4 config.w32 .gitignore myext.c php_myext.h CREDITS EXPERIMENTAL tests/001.phpt myext.php [fertig].

Um Ihre neue Erweiterung zu verwenden, müssen Sie Folgendes ausführen Folgende Schritte:

    $ cd ..
  1. $ vi ext/myext/config.m4
  2. $ ./buildconf
  3. $ ./ configure –[with|enable]-myext
  4. $ make
  5. $ ./sapi/cli/php -f ext/myext/myext.php
  6. $ vi ext/ myext/myext.c
  7. $ make
Wiederholen Sie die Schritte 3-6, bis Sie mit ext/myext/config.m4 und

zufrieden sind Schritt 6 bestätigt, dass Ihr Modul in PHP kompiliert ist. Beginnen Sie dann mit dem Schreiben von
Code und wiederholen Sie die letzten beiden Schritte so oft wie nötig.`

Zu diesem Zeitpunkt sollte sich in Ihrem Verzeichnis ein myext-Verzeichnis befinden. Dies ist das von ext_skel für Sie generierte Erweiterungsframework.

Dann müssen Sie config.m4
ändern Entfernen Sie die DNL vor dem folgenden Code:

<code>dnl PHP_ARG_ENABLE(myext, whether <span>to</span> enable myext support,
dnl [  <span>--enable-myext           Enable myext support])</span></code>
Speichern und beenden!

Kompilieren starten
Im myext-Verzeichnis. Führen Sie den folgenden Code aus:

<code>phpize
<span>.</span>/configure <span>--</span><span>with</span><span>-php</span><span>-config</span><span>=</span>/usr/<span>local</span>/php/bin/php<span>-config</span>
make
make test
make install</code>
Nach der Make-Installation werden Sie aufgefordert, das Erweiterungsverzeichnis /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/ zu installieren. . Sie können es nach der Eingabe von „Gehe zu myext.so“

anzeigen und dann erweiterte Informationen in php.ini hinzufügen

Erweiterung = myext.so
Verwenden Sie den Befehl php -m, um zu sehen, ob die Erweiterung erfolgreich installiert wurde.
Starten Sie fpm neu und Sie können die installierte Erweiterung in phpinfo sehen

Installation der unter Linux entwickelten PHP-Erweiterung

Hinweis

Die Installation einer Erweiterung ist hier abgeschlossen.

Beim Testen werden Sie gewarnt, dass einige Funktionen in php.ini deaktiviert sind. Suchen Sie die Funktion „disable_function“ von php.ini und entfernen Sie die Warnfunktion.
Darüber hinaus erkläre ich die Installationsschritte der von GNUs AUTOCONF und AUTOMAKE unter Linux generierten Programme

config/configure/Configure

Dies wird verwendet, um die Zieleigenschaften Ihrer Installationsplattform zu erkennen. Es erkennt beispielsweise, ob Sie CC oder GCC haben. Es ist kein CC oder GCC erforderlich. Es handelt sich um ein Shell-Skript
Dieser Schritt wird im Allgemeinen verwendet, um Makefile zu generieren, um den nächsten Schritt der Kompilierung vorzubereiten. Sie können die Installation steuern, indem Sie nach der Konfiguration Parameter hinzufügen, wie zum Beispiel:
./configure –prefix=/usr
Das Obige bedeutet, die Software unter /usr
zu installieren Die ausführbare Datei wird in /usr/bin (anstelle der Standardeinstellung /usr/local/bin)
installiert Ressourcendateien werden in /usr/share installiert (anstelle des standardmäßigen /usr/local/share)
Gleichzeitig können Sie die Konfigurationsdateien einiger Software angeben, indem Sie –sys-c
angeben Es gibt auch Parameter wie –with, –enable, –without, –disable usw., um die Kompilierung zu steuern. Detaillierte Anweisungen und Hilfe können Sie über ./configure –help
anzeigen mache
Dieser Schritt wird zur Kompilierung verwendet. Er liest Anweisungen aus dem Makefile und kompiliert dann
Dieser Schritt ist die Kompilierung. Die meisten Quellcodepakete werden durch diesen Schritt kompiliert
Natürlich muss einige in Perl oder Python geschriebene Software durch Aufrufen von Perl oder Python
kompiliert werden Wenn während des Erstellungsprozesses ein Fehler auftritt, müssen Sie den Fehlercode notieren (beachten Sie nicht nur die letzte Zeile) und können dann einen Fehlerbericht an den Entwickler (normalerweise gibt es in INSTALL eine Übermittlungsadresse) oder Ihr System senden Da es weniger Abhängigkeiten zu Bibliotheken usw. gibt, müssen Sie die Fehlercodes sorgfältig studieren
Test durchführen / prüfen
Wie der Name schon sagt, dient dieser Schritt dazu, den vorherigen Schritt von make zu überprüfen. Es muss sichergestellt werden, dass bei make keine Fehler vorliegen. Das heißt, der Test und die Prüfung dieses Schritts müssen alle in Ordnung sein und der Fehler ist 0
sudo make install
Dieser Schritt dient der Installation. Er liest auch Anweisungen aus dem Makefile und installiert es am angegebenen Speicherort
Um diesen Befehl zu installieren, benötigen Sie im Allgemeinen Root-Rechte (da Sie Dateien auf das System schreiben müssen), daher sind sudo

AUTOMAKE und AUTOCONF sehr nützlich für die Veröffentlichung von C-Programmen. Wenn Sie auch Programme schreiben und AUTOMAKE und AUTOCONF verwenden möchten, können Sie auf die entsprechenden Artikel auf CNGNU.ORG

verweisen

Das Obige stellt die Installation von PHP-Erweiterungen vor, die unter Linux entwickelt wurden, und hoffe, dass es für Freunde, die sich für PHP-Tutorials interessieren, hilfreich sein wird.

Stellungnahme:
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