So installieren und führen Sie phpize aus

215

Ich wollte ffmpegals Erweiterung meines PHP-Setups installieren . Bevor ich es installieren kann, muss ich es tun phpize. Ich installierte php5-devdurch sudo apt-get install php5-dev. Aber jetzt, wenn ich laufe, phpizeerhalte ich den folgenden Fehler:

phpize
Cannot find config.m4. 
Make sure that you run '/usr/bin/phpize' in the top level source directory of the module

Der Speicherort meiner php.ini ist /usr/local/zend/etc/php.ini

Von einer anderen Online-Ressource habe ich dies versucht

sudo apt-get install autoconf automake libtool m4

Aber alle sind bereits installiert.

Locate config.m4 hat nichts zurückgegeben.

Alle Hinweise hier , wie ich bekommen kann phpizeund damit ffmpegzum Laufen?

Hrishikesh Choudhari
quelle

Antworten:

462

Für neuere Versionen von Debian / Ubuntu (Debian 9+ oder Ubuntu 16.04+) installieren Sie das php-devAbhängigkeitspaket, das automatisch die richtige Version von php{x}-devfür Ihre Distribution installiert :

sudo apt install php-dev

Ältere Versionen von Debian / Ubuntu:

Für PHP 5 ist es im php5-dev-Paket enthalten.

sudo apt-get install php5-dev

Für PHP 7.x (aus dem Kommentar von rahilwazir):

sudo apt-get install php7.x-dev

RHEL / CentOS / lecker

yum install php-devel # see comments
Blackout
quelle
9
Wenn Sie yum anstelle von apt-get verwenden, heißt das entsprechende Paket php-devel
cheepychappy
5
yum installiere php-devel auf rhel / centos
andrej
4
Wie kann das die Lösung sein? In der Frage, die er sagte, installierte er bereits php5-dev.
Daniel W.
53
Für PHP7 können Sie verwendenphp7.0-dev
Rahil Wazir
17
Verwenden Sie für PHP7.1php7.1-dev
Nino Škopac
60

Für PHP7-Benutzer

7.1

sudo apt install php7.1-dev

7.2

sudo apt install php7.2-dev

7.3

sudo apt install php7.3-dev

7.4

sudo apt install php7.4-dev

Wenn Sie sich bei Ihrer PHP-Version nicht sicher sind, führen Sie einfach den Befehl aus php -v

M_R_K
quelle
11
Sie müssen apt-get nicht mehr wirklich eingeben. apt install ist das gleiche. apt-cache muss nicht mehr eingegeben werden, auch nicht mehr nur apt search
Kevin Remisoski
php7.0-dev ist für mich nicht in der Paketliste enthalten. Seltsam, ich sehe php5-dev in der Liste, aber überhaupt keine php7.0-Pakete.
Solomon Closson
@SolomonClosson Dies hängt von der verwendeten Betriebssystemversion ab.
M_R_K
1
Wenn Sie stattdessen das Paket php-dev installieren, wird PHP immer auf die neueste stabile Version aktualisiert. Wenn Sie php7.0-dev installieren und PHP 7.1 veröffentlicht wird, werden Sie im Allgemeinen nicht darauf aktualisiert.
MacroMan
22

Ohk .. Ich habe es zum Laufen gebracht, indem ich /usr/bin/phpizestatt nur getippt habe phpize.

Hrishikesh Choudhari
quelle
6
In diesem Fall befindet sich / usr / bin nicht in Ihrem Pfad, aber ich denke, es sollte sein. Tun Sie PATH=$PATH\:/usr/bin; export PATHund phpizewerden Sie in Zukunft arbeiten.
Berry Langerak
Ich habe die Fehlermeldung "ffmpeg Shared Libraries nicht gefunden. Stellen Sie sicher, dass ffmpeg als Shared Libraries mit der Option --enable-shared kompiliert wurde." Ich verwende diesen Befehl "phpize", es funktioniert, aber wenn ich dies ausführe "./configure && machen "dieser Fehler kommt
Chintan Gor
14

Verwenden Sie unter Redhat Enterprise / CentOS Folgendes, yumum das php-develModul zu installieren :

yum install php-devel

Für PHP 7 benötigen Sie:

yum install php70-php-devel
fedorqui 'SO hör auf zu schaden'
quelle
1
Das ergibt No package php-devel availablefür mich.
Phantom Watson
Für PHP7 musste ichphp70-php-devel
MECU
yum install php72-php-develfür PHP 7.2
Josef
2
und benutze diesln -s /opt/remi/php72/root/bin/phpize /usr/bin/phpize
Josef
7

Hmm ... eigentlich weiß ich nicht, wie das das gelöst hat? Aber die folgenden Schritte haben es für mich gelöst:

find / -name 'config.m4'

Überprüfen Sie nun, ob sich die config.m4 irgendwo in einem Ordner mit dem Material befindet, das Sie phpisieren möchten. Gehen Sie in diesen Ordner und führen Sie phpize direkt dort aus.

Bosh
quelle
6

Schritt - 1: Wenn Sie sich über die installierte PHP-Version nicht sicher sind, führen Sie zuerst den folgenden Befehl im Terminal aus

php -v

Ausgabe: Der obige Befehl gibt die auf Ihrem Computer installierte PHP-Version aus, meine ist 7.2

PHP 7.2.3-1ubuntu1 (cli) (built: Mar 14 2018 22:03:58) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.3-1ubuntu1, Copyright (c) 1999-2018, by Zend Technologies

Schritt 2: Um dann phpize zu installieren, führen Sie den folgenden Befehl aus: Da meine PHP-Version 7.2.3 ist. Ich werde es durch 7.2 ersetzen, also wird der Befehl sein,

sudo apt-get install php7.2-dev

Schritt 3: Fertig!

Alternative Methode (optional): Um die phpize-Version basierend auf der auf Ihrem Computer installierten phpize-Version automatisch zu installieren, führen Sie den folgenden Befehl aus.

sudo apt-get install php-dev

Dieser Befehl erkennt automatisch die entsprechende installierte PHP-Version und installiert die entsprechende PHP-Version für dieselbe.

Manoj Selvin
quelle
5

Für Ubuntu 14.04LTS mit PHP 7, Problem:

sudo apt-get install php-dev

Dann installieren Sie:

pecl install memcache
pingle60
quelle
Bitte verpacken Sie Ihre Codebits mit Backticks, damit sie als Code angezeigt werden
YakovL
1
Wenn Sie nur php-dev verwenden, wird die aktuell veröffentlichte und für Ihre Distribution gepflegte Version installiert. Unter Ubuntu 12 wird php5-dev installiert.
MacroMan
5

In Ubuntu 16.04 können Sie phpizemit dem Befehl installieren

aptitude install php7.1-dev // for php 7.1

das ist äquivalent zu

apt-get install php7.1-dev // for php 7.1
num3ri
quelle
2

Vom linuxTerminal installieren

sudo apt-get install <php_version>-dev

Beispiel:

sudo apt-get install php5-dev     #For `php` version 5
sudo apt-get install php7.0-dev   #For `php` version 7.0
Sumon Sarker
quelle
1

Dies könnte jemandem auf Ubuntu helfen. Keine Zusagen.

sudo apt-get install libcurl3 php5-dev libcurl4-gnutls-dev libmagic-dev
sudo apt-get install php-http make
sudo pecl install pecl_http

Und "extension=http.so"zur php.ini hinzufügen (normalerweise unter /etc/php5/apache2/php.ini)

Starten Sie dann Apache ( sudo service apache2 restart) neu.

Überprüfen Sie im Zweifelsfall Ihre Apache-Protokolle:

sudo su --
cd /var/log/apache2
tail -25 error.log

Startet http.so oder schlägt es fehl?

ted.strauss
quelle
1

Natürlich in PHP7.2

sudo apt-get install php7.2-dev
HMagdy
quelle
1

Für Ubuntu mit installiertem Plesk-Lauf apt-get install plesk-php56-devändern Sie für andere Versionen einfach XX in phpXX (ohne Punkt).

Sanel
quelle
1

Wenn Sie Probleme mit phpize haben, die unter CentOS7.6 nicht gefunden wurden, nachdem Sie die relevanten Entwicklungstools für Ihre PHP-Version (en) installiert haben, hat dieser Pfad schließlich für mich funktioniert:

Für PHP 7.2.x.

/opt/cpanel/ea-php72/root/usr/bin/phpize

Für PHP 7.3.x.

/opt/cpanel/ea-php73/root/usr/bin/phpize

Führen Sie dies in Ihrem Ordner aus, der die heruntergeladene PHP-Erweiterung enthält, z

cd /php-ext-brotli
/opt/cpanel/ea-php73/root/usr/bin/phpize
./configure --with-php-config=/opt/cpanel/ea-php73/root/usr/bin/php-config
make
make test
TheOldMan2000
quelle
0

Gehen Sie zum heruntergeladenen Ordner und dort finden Sie config.m4. Öffnen Sie das Terminal und führen Sie phpsize aus.

Santosh Rai
quelle
0

Wenn Sie beispielsweise den Befehl "phpize" für PHP 5.6 verwenden möchten, verwenden Sie den vollständigen Pfad: Code:

/opt/cpanel/ea-php56/root/usr/bin/phpize
Shobhit Verma
quelle
0

Ich hatte genau dieses Problem unter macOS im Jahr 2018.

Für mich hat das erste Laufen brew install phpvorher sudo pecl install mongodbden Trick getan.

Adam Diament
quelle