mysql.h: No such file or directory

error 1:
mysql.h: No such file or directory

解決:
apt-get install libmysqlclient-dev
find /usr/ -name ‘mysql.h’
/usr/include/mysql/mysql.h

error 2:
/tmp/ccDay78L.o: In function main':
***.c:(.text+0x6ab): undefined reference to
mysql_init’
*.c:(.text+0x6f2): undefined reference to `mysql_real_connect’
collect2: error: ld returned 1 exit status

解決:
出現該錯誤的原因是因爲編譯器找不到mysql_init,mysql_close等的具體實現.雖然我們包括了正確的頭文件,但是我們在編譯的時候還是要連接確定的庫.對於一些常用的函數的實現,gcc編譯器會自動去連接一些常用庫,這樣我們就沒有必要自己去指定了,如:printf函數.在本程序中要通過-L選項包含庫文件的路徑:
gcc -o conn conn.c -L /usr/local/mysql/lib/*.a -lz
或者:
命令行後加入 -lmysqlclient
例如對mysqlconn.c編譯
gcc mysqlconn.c -o conn -l mysqlclient

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章