本文目錄一覽:
- 1、SUSE LINUX編譯PHP程序時出錯
- 2、PHP不能編譯,急求大神幫助!
- 3、安裝了APPSERVE以後,無法編譯PHP程序,就是之間的內容無法編譯出來 這是怎麼回事啊
- 4、編譯PHP提示zip錯誤,請問怎麼解決
- 5、編譯PHP提示出錯找不到libc-client.無法編譯PHP怎麼辦
SUSE LINUX編譯PHP程序時出錯
編譯錯誤,一般是語法上存在問題,編譯過不去;
運行錯誤,是指程序在運行過程中出現錯誤,只能說是程序存在一定的邊界bug;
編譯錯誤一般是指java語法的錯誤,運行錯誤分兩種一種是error還有就是Exception 有的異常是拋出但可繼續執行之後的代碼,有的異常是無法繼續進行的代碼如:
RuntimeException,ClassCastException, 那麼,編譯和運行時期最好的理解就是java1.5之後出現的泛型機制,在以前的版本中如果考慮不當,只會在運行時出現異常,現在加了泛型,問題會給暴露在編譯時期,這樣就提高了代碼的安全性。
PHP不能編譯,急求大神幫助!
能用yum 安裝就用yum 安裝 , 新手不推薦用編譯安裝,那樣太麻煩了。
yum 安裝後 修改一下自定義一下PHP設置就OK了
安裝了APPSERVE以後,無法編譯PHP程序,就是之間的內容無法編譯出來 這是怎麼回事啊
PHP模板加載了么?還有就是文件的根目錄設置的對么?我覺得是你的根目錄的問題
編譯PHP提示zip錯誤,請問怎麼解決
vi /etc/ld.so.conf.d/local.conf //創建local.conf
/usr/local/lib //添加輸入
ldconfig -v //執行命令
編譯PHP提示出錯找不到libc-client.無法編譯PHP怎麼辦
I. 安裝devel庫
yum install pam-devel libc-client libc-client-devel -y
如果使用了yum安裝了libc-client,那麼在以後編譯參數–with-imap=/usr/local/php-imap中的路徑應該刪除,即–with-imap。
如果這樣還不能解決,那麼就需要手動編譯imap2007f了!
II. 手動編譯imap2007f
腳本取自
在/usr/src目錄下運行以下腳本,將會在/usr/local/php-imap目錄下生成imap需要的庫
#!/bin/sh
# Script for PHP-IMAP installation. 0.1b
# Written by Martynas Bendorius (smtalk)
CWD=`pwd`
OS=`uname`
#Is it a 64-bit OS?
B64=0
B64COUNT=`uname -m | grep -c 64`
if [ “$B64COUNT” -eq 1 ]; then
B64=1
LD_LIBRARY_PATH=/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
fi
if [ ! -e /usr/include/krb5.h ] [ -e /etc/redhat-release ]; then
echo “Installing krb5-devel”
yum -y install krb5-devel
fi
VERSION=2007f
PROTOCOL=ftp
URL=”${PROTOCOL}://{VERSION}.tar.Z”
FILENAME=imap-${VERSION}
TARBALL=${FILENAME}.tar.Z
echo “Downloading ${TARBALL}…”
wget -O ${TARBALL} ${URL}
tar xzf ${TARBALL}
cd ${FILENAME}
echo “Installing ${FILENAME}…”
if [ ${OS} = “FreeBSD” ]; then
if [ ${B64} -eq 0 ]; then
make bsf
else
make bsf EXTRACFLAGS=-fPIC
fi
else
perl -pi -e ‘s#SSLDIR=/usr/local/ssl#SSLDIR=/etc/pki/tls#’ src/osdep/unix/Makefile
perl -pi -e ‘s#SSLINCLUDE=\$\(SSLDIR\)/include#SSLINCLUDE=/usr/include/openssl#’ src/osdep/unix/Makefile
perl -pi -e ‘s#SSLLIB=\$\(SSLDIR\)/lib#SSLLIB=/usr/lib/openssl#’ src/osdep/unix/Makefile
if [ ${B64} -eq 0 ]; then
make slx
else
make slx EXTRACFLAGS=-fPIC
fi
fi
echo “Copying files to /usr/local/php-imap”
mkdir -p /usr/local/php-imap/include
mkdir -p /usr/local/php-imap/lib
chmod -R 077 /usr/local/php-imap
cp -f c-client/*.h /usr/local/php-imap/include/
cp -f c-client/*.c /usr/local/php-imap/lib/
cp -f c-client/c-client.a /usr/local/php-imap/lib/libc-client.a
cd ..
rm -rf ${FILENAME}
if [ -d /usr/lib/x86_64-linux-gnu ] [ ! -d /usr/kerberos/lib ]; then
mkdir -p /usr/kerberos
ln -s /usr/lib/x86_64-linux-gnu /usr/kerberos/lib
fi
exit 0;
III. 開始編譯
下面是編譯PHP的參數,如果出現問題,請參考編譯PHP5.6 和 PHP編譯錯誤的解決辦法。
./configure –prefix=/usr/local/php –with-pdo-pgsql –with-zlib-dir –with-freetype-dir –enable-mbstring –with-libxml-dir=/usr –enable-soap –enable-calendar –with-curl –with-mcrypt –with-zlib –with-gd –with-pgsql –disable-rpath –enable-inline-optimization –with-bz2 –with-zlib –enable-sockets –enable-sysvsem –enable-sysvshm –enable-pcntl –enable-mbregex –enable-exif –enable-bcmath –with-mhash –enable-zip –with-pcre-regex –with-mysql –with-pdo-mysql –with-mysqli –with-jpeg-dir=/usr –with-png-dir=/usr –enable-gd-native-ttf –with-openssl –enable-ftp –with-imap=/usr/local/php-imap –with-imap-ssl –with-kerberos –with-gettext –with-xmlrpc –with-xsl –enable-opcache –enable-fpm –with-fpm-user=www –with-fpm-group=www –disable-fileinfo
IV. 其他問題
在本次編譯中,老高又遇到了幾個怪事
set –enable-opcache=no
configure: error: Don’t know how to define struct flock on this system, set –enable-opcache=no
這個問題還是庫文件的鏈接問題
解決:
echo /usr/local/lib /etc/ld.so.conf.d/local.conf
ldconfig -v
讓編譯的PHP支持memcache
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/244628.html