64位centos7.4系统上编译PHP5.6.32报错:
cd /usr/local/src/php-5.6.32 ./configure \ --prefix=/usr/local/php \ --with-apxs2=/usr/local/httpd/bin/apxs \ --with-config-file-path=/usr/local/php/etc \ --with-mysql=/usr/local/mysql/lib \ --with-libxml-dir \ --with-gd \ --with-jpeg-dir \ --with-png-dir \ --with-freetype-dir \ --with-iconv-dir \ --with-zlib-dir \ --with-bz2 \ --with-openssl \ --with-mcrypt \ --enable-soap \ --enable-gd-native-ttf \ --enable-mbstring \ --enable-sockets \ --enable-exif
报错原因和解决
经查,问题是64位系统中 libmysqlclient 默认安装到了 /usr/lib64/mysql/ 目录下
而/usr/lib 目录下没有相应文件,但是php编译时,要去 /usr/lib目录下查找
--with-mysql=/usr/local/mysql/lib \ 即使这里指明在这里查找也报错,因此是路径问题,把这段删掉; 解决:一般编译前添加环境变量就可以解决:export MYSQL_LIB_DIR=/usr/local/mysql/lib/