You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Linux编译PHP关联MySQL遇阻:无法找到MySQL安装路径

问题排查与解决

1. --with-pdo-mysql 参数路径错误

你给--with-pdo-mysql传的是/dir/mysql_64/bin,这是MySQL的可执行文件目录,但PHP的configure脚本需要的是MySQL的安装根目录(也就是包含include和lib子目录的路径)。正确写法应该是:

--with-pdo-mysql=/dir/mysql_64

configure会自动在该路径下查找include/mysql里的头文件,以及lib里的链接库。

2. --with-mysqli 参数的正确用法

添加--with-mysqli时提示版本不符,核心原因是没指定正确的mysql_config路径。PHP7.3编译mysqli扩展时,需要通过mysql_config脚本获取MySQL的版本和编译参数,所以参数要写成:

--with-mysqli=/dir/mysql_64/bin/mysql_config

这样configure会调用该脚本自动读取MySQL5.5的正确信息,解决版本检测不通过的问题。

3. 修正后的完整configure命令

把上述参数整合后,完整命令如下:

./configure --with-apxs2=/dir/utils/apache/bin/apxs \
--prefix=/dir/utils/php \
--with-config-file-path=/dir/utils/php \
--enable-force-cgi-redirect \
--disable-cgi \
--with-zlib \
--with-gettext \
--without-pear \
--with-pdo-mysql=/dir/mysql_64 \
--with-mysqli=/dir/mysql_64/bin/mysql_config

额外检查项

  • 确认MySQL5.5已经完成源码编译安装,且/dir/mysql_64/include和/dir/mysql_64/lib目录存在,包含mysql.h、libmysqlclient.so这类关键文件。
  • 如果编译时提示库文件找不到,可先设置环境变量再执行configure:
    export LD_LIBRARY_PATH=/dir/mysql_64/lib:$LD_LIBRARY_PATH
    export CFLAGS="-I/dir/mysql_64/include"
    export LDFLAGS="-L/dir/mysql_64/lib"
    

内容的提问来源于stack exchange,提问作者DysonC

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 04:17:03