萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

解決 PDO_MYSQL 編譯錯誤:make: *** [pdo_mysql.lo] Error 1

PDO_MYSQL 編譯失敗:缺少 MySQL 開發頭文件

編譯 pdo_mysql 擴展時出現 make: *** [pdo_mysql.lo] Error 1,核心原因是編譯器找不到 MySQL 客戶端開發庫(Header 檔與 Library)。

快速修復:建立 Header 檔軟連結

假設 MySQL 安裝於 /usr/local/mysql:

ln -s /usr/local/mysql/include/* /usr/local/include/

若 MySQL 安裝於其他路徑(如 /usr/local/server/mysql):

ln -s /usr/local/server/mysql/include/* /usr/local/include/

完整排查步驟

  1. 確認 MySQL 開發套件已安裝:
    • CentOS/RHEL: yum install mysql-devel
    • Ubuntu/Debian: apt-get install libmysqlclient-dev
  2. 確認 mysql_config 可用:which mysql_config
  3. 若使用自編譯 MySQL,手動建立軟連結(如上)
  4. 重新編譯 pdo_mysql:
cd /path/to/php/ext/pdo_mysql
phpize
./configure --with-pdo-mysql=/usr/local/mysql
make clean && make && make install

驗證安裝

php -m | grep pdo_mysql
# 或查看 phpinfo() 輸出

原理: PHP 編譯擴展時透過 mysql_config 尋找 include/lib 路徑;軟連結將 MySQL headers 映射到系統標準搜尋路徑 /usr/local/include,讓編譯器直接找到 mysql.h 等關鍵檔案。

copyright © 萬盛學電腦網 all rights reserved