所有mysql_xxx 函数都显示为,如:
undefined reference to `mysql_init`
undefined reference to `mysql_close`
...
解决步骤:
1.是否有包含头文件mysql.h
如 -I /usr/include/mysql
2.是否有添加mysql对应的链接库目录
如 -L /usr/lib/mysql -l mysqlclient -lz -lm
如果还是不行,则在编译程序末尾加上 `mysql_config --cflags --libs`;
系统会自动查找mysql所依赖的内容。
如:
g++ main.cpp logger.cpp -o test `mysql_config --cflags --libs`
在系统下查询 mysql_config 配置内容:
root@localhost:~#mysql_config --cflags --libs
-I /usr/include/mysql -DBIG_JSONS=1 -fno-strict-aliasing -g
-L /usr/lib -lmysqlclient -lpthread -lz -lm -lrt -ldl