Gagal memasang APC melalui Pecl, instal APC

18

Ketika saya mencoba menginstal APC via pecl install APC-3.1.5 atau bahkan pecl install APCsaya mendapatkan kesalahan berikut ketika paket datang ke makeperintah:

running: make
/bin/sh /var/tmp/pear-build-root/APC-3.1.5/libtool --mode=compile cc  -I. -I/var/tmp/APC -DPHP_ATOM_INC -I/var/tmp/pear-build-root/APC-3.1.5/include -I/var/tmp/pear-build-root/APC-3.1.5/main -I/var/tmp/APC -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib  -DHAVE_CONFIG_H  -g -O2   -c /var/tmp/APC/apc.c -o apc.lo
mkdir .libs
 cc -I. -I/var/tmp/APC -DPHP_ATOM_INC -I/var/tmp/pear-build-root/APC-3.1.5/include -I/var/tmp/pear-build-root/APC-3.1.5/main -I/var/tmp/APC -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /var/tmp/APC/apc.c  -fPIC -DPIC -o .libs/apc.o
In file included from /var/tmp/APC/apc.c:44:
/usr/include/php/ext/pcre/php_pcre.h:29:18: error: pcre.h: No such file or directory
In file included from /var/tmp/APC/apc.c:44:
/usr/include/php/ext/pcre/php_pcre.h:37: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
/usr/include/php/ext/pcre/php_pcre.h:38: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
/usr/include/php/ext/pcre/php_pcre.h:44: error: expected specifier-qualifier-list before 'pcre'
/var/tmp/APC/apc.c:369: error: expected specifier-qualifier-list before 'pcre'
/var/tmp/APC/apc.c: In function 'apc_regex_compile_array':
/var/tmp/APC/apc.c:430: error: 'apc_regex' has no member named 'preg'
/var/tmp/APC/apc.c:430: error: 'apc_regex' has no member named 'preg'
/var/tmp/APC/apc.c:431: error: 'apc_regex' has no member named 'nreg'
/var/tmp/APC/apc.c:431: error: 'apc_regex' has no member named 'nreg'
/var/tmp/APC/apc.c: In function 'apc_regex_match_array':
/var/tmp/APC/apc.c:463: error: 'apc_regex' has no member named 'preg'
/var/tmp/APC/apc.c:463: error: 'apc_regex' has no member named 'preg'
/var/tmp/APC/apc.c:464: error: 'apc_regex' has no member named 'nreg'
/var/tmp/APC/apc.c:464: error: 'apc_regex' has no member named 'nreg'
make: *** [apc.lo] Error 1
ERROR: `make' failed

Saya menginstal semua hal yang mungkin hilang:

yum install php-devel httpd-devel
yum groupinstall ‘Development Tools’
yum groupinstall ‘Development Libraries’

Dan masih belum ada.

sangoku
sumber

Jawaban:

35

Mencoba

yum install pcre-devel

sebelum menginstal APC.

Sedang digunakan Debian

aptitude install libpcre3-dev

sebagai gantinya.

puncak
sumber
11
+1 ini berfungsi untuk saya, harus menjadi solusi yang diterima
iainlbc
bekerja seperti pesona ...
Emmanuel Okeke
+1 ini berfungsi untuk saya, harus menjadi solusi yang diterima. Terima kasih
Riz
Ini memperbaikinya untuk saya juga. +1 untuk jawaban yang diterima.
zigojacko
2

Saya akan mengkompilasi dari sumber. Pastikan Anda menghapus apa pun yang ditinggalkan oleh paket installer. Anda mungkin memiliki direktori ekstensi lama yang bertebaran dari versi php lama. rm -rf mereka dan isinya sehingga Anda tidak akan memiliki kebingungan.

cd ~ 
mkdir setups
cd setups 
wget http://pecl.php.net/get/APC-3.1.9.tgz 
tar -xvf APC-3.1.9.tgz 
cd APC-3.1.9
phpize
./configure --enable-apc --enable-apc-mmap --with-apxs --with-php-config=/usr/local/bin/php-config
make

Untuk argumen config =, jalankan php mana , dan tambahkan -config ke hasilnya

Jika Anda mendapatkan kesalahan ini (Sama seperti yang Anda posting)

Dalam file termasuk dari /usr/local/src/APC-3.1.5/apc.c:38: /usr/include/php/ext/pcre/php_pcre.h:29:18: error: pcre.h: Tidak ada file atau direktori Dalam file termasuk dari /usr/local/src/APC-3.1.5/apc.c:38: /usr/include/php/ext/pcre/php_pcre.h:45: error: expected '=', ',', ';', 'asm' atau ' atribut ' sebelum ' ' token /usr/include/php/ext/pcre/php_pcre.h:46: error: expected '=', ',', ','; ' , 'asm' atau ' atribut ' sebelum ''token /usr/include/php/ext/pcre/php_pcre.h:52: error: daftar-kualifikasi-kualifikasi yang ditentukan sebelum' pcre '/usr/local/src/APC-3.1.5/apc.c:362: error: daftar-kualifikasi-kualifikasi yang ditentukan sebelum 'pcre' /usr/local/src/APC-3.1.5/apc.c: Dalam fungsi 'apc_regex_compile_array': /usr/local/src/APC-3.1.5/apc. c: 419: error: 'apc_regex' tidak memiliki anggota bernama 'preg' /usr/local/src/APC-3.1.5/apc.c:419: error: 'apc_regex' tidak memiliki anggota bernama 'preg' / usr / local / src / APC-3.1.5 / apc.c: 420: error: 'apc_regex' tidak memiliki anggota bernama 'nreg' /usr/local/src/APC-3.1.5/apc.c:420: error: ' apc_regex 'tidak memiliki anggota bernama' nreg '/usr/local/src/APC-3.1.5/apc.c: Dalam fungsi' apc_regex_match_array ': /usr/local/src/APC-3.1.5/apc.c:452 : error: 'apc_regex 'tidak memiliki anggota bernama' preg '/usr/local/src/APC-3.1.5/apc.c:452: error:' apc_regex 'tidak memiliki anggota bernama' preg '/usr/local/src/APC-3.1 .5 / apc.c: 453: error: 'apc_regex' tidak memiliki anggota bernama 'nreg' /usr/local/src/APC-3.1.5/apc.c453: error: 'apc_regex' tidak memiliki anggota bernama ' nreg 'make: *** [apc.lo] Kesalahan 1

Maka Anda harus menginstal pcre dan pastikan itu dari direktori / atau tidak akan menginstal.

yum install pcre-devel

make
make install
Chris_O
sumber
Jika Anda mendapat peringatan tentang flag --with-apxs, Anda bisa mengabaikannya.
Joseph Lust
0

sepertinya Anda mencoba menginstal APC pada sistem yang menjalankan PHP <5.2.x. Versi 3.1 dari APC membutuhkan 5.2.x. Saya mengasumsikan Anda menjalankan CentOS 5.5 yang dikirimkan dengan PHP 5.1.x.

coba kompilasi dan instal APC 3.0.19 dari http://pecl.php.net/package/APC . Kami telah berhasil menerapkan APC 3.0 di server CentOS kami.

johndagostino
sumber
1
Tidak, saya sudah menginstal PHP 5.3.3 dan masih pecl tidak menginstalnya dengan benar ... saya pikir repo mereka rusak. Saya telah seperti yang Anda sarankan untuk secara manual mengompilasinya.
sangoku
@sangoku: saya juga terpukul dengan hal yang sama. jika Anda mendapat solusi, silakan bagikan di sini. versi php saya 5.3.2 dan mendapatkan kesalahan iniprocedure entry point pcre_exe could not be located
RSK
0

Di Ubuntu:

aptitude install libpcre3-dev

Lalu:

pecl install apc
ea
sumber
Tidak ada informasi baru (TM). Downvoting.
Deer Hunter
Terima kasih sobat. Untuk pengguna Ubuntu itu informasi yang berguna. Saya tidak bisa mengomentari jawaban sebelumnya (komentar masih dinonaktifkan untuk saya, saya hanya bisa menjawab).
ea
Terima kasih. Tidak dapat menemukan apa yang salah dengan ubuntu saya. Membantuku.
shukshin.ivan