編寫 C 語言程序 connect1.c 連接 MySQL 數據庫,執行編譯命令:
gcc connect1.c -o connect1.exe -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
編譯器報錯:找不到 mysql.h

系統僅安裝了 MySQL 服務端 (mysql-server) 和客戶端 (mysql-client),缺少開發庫文件 (MySQL database development files),導致頭文件 mysql.h 和鏈接庫缺失。
| 發行版 | 安裝命令 |
|---|---|
| Debian/Ubuntu | sudo apt-get install libmysqlclient-dev |
| CentOS/RHEL 7 | sudo yum install mysql-devel |
| CentOS/RHEL 8+ / Fedora | sudo dnf install mysql-devel |
| openSUSE | sudo zypper install libmysqlclient-devel |
安裝完成後,確認關鍵文件存在:
# 頭文件
ls /usr/include/mysql/mysql.h
# 庫文件
ls /usr/lib/mysql/libmysqlclient.so*
gcc connect1.c -o connect1.exe -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
./connect1.exe

-I/usr/include/mysql:指定頭文件搜索路徑 (mysql.h 所在目錄)-L/usr/lib/mysql:指定庫文件搜索路徑-lmysqlclient:鏈接 libmysqlclient.so 動態庫/usr/lib64/mysql,需按實際情況調整 -L 參數libmariadb-dev 或 mariadb-devel