概述
1:mysql.h:没有那个文件或者目录
原:#include 修改后:#include 或者#include
因为:/usr/inlcude/是gcc默认搜寻头文件的一个路径 而/include下有一个mysql目录名与mysql.h命名空间相同,系统不再向下查询。 即如果mysql目录不叫mysql 叫mysqlnew也不会出现这样的情况,所以在mysql.h前面要加上mysql/指明是哪个子目录下的头文件。
所以在这种情况下修改/etc/ld.so.conf.d/mysqlxxxxxxx下的路径ldconfig也是没用。
还有一个方法就是在gcc编译时候指定头文件的路径:
gcc mysql.c -o exe -I /usr/include/mysql-L /usr/include/mysql -lmysqlclient :-I 可取 -L指定的还是有问题的(下面讲到)
说不清为什么 gcc的编译问题
2:/usr/bin/ld: cannot find -lmysqlclient在默认目录或者-L指定的路径下找不到该库
我的问题是因为路径指定的错误:
原:
gcc mysql.c -o exe -I /usr/include/mysql -L /usr/include/mysql-lmysqlclient :-I 可取 -L指定的还是有问题的(下面讲到)
find -name *mysqlclient*
搜索关于mysqlclient.so相关的库都在/usr/lib64/mysql/下面 所以:
修改后:
gcc mysql.c -o mysql -L /usr/lib64/mysql-lmysqlclient -I /usr/include/mysql
gcc $(mysql_config --cflags) xxx.c -o xxx $(mysql_config --libs):这句不知道是什么意思 反正这句可以使上面的问题一个都不出现 是mysql编译的一些配置吧
最后
以上就是狂野牛排为你收集整理的mysql.h说明文档,mysql.h:没有文件或目录的全部内容,希望文章能够帮你解决mysql.h说明文档,mysql.h:没有文件或目录所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复