在linux下安装的mysql找不到头文件mysql.h,怎么办

作者&投稿:娄华 (若有异议请与网页底部的电邮联系)
linux下执行make提示mysql/mysql.h未找到~

找不到头文件,需要在gcc编译时指定 头文件地址,用命令mysql_config,即可获取mysql安装后头文件所在位置,库文件所在位置,之后指定相关路径。-I /usr/include/mysql,同时需要指定mysql的库文件

今天看着看着代码,突然就想学学linux下c中怎么连接mysql数据库的。带着好奇的心理编写了,最最简单的连接程序:
#include
#include

MYSQL *mysql;//首先要定义个mysql对象,来实现初始化。
main (void){
mysql_init(&mysql);//初始化mysql数据库
if(mysql_real_connect(&mysql,"localhost","root","123qwe","test",3306,0,0)){//此方法是用于连接mysql数据库的,详细参数请参照:http://dev.mysql.com/doc/refman/5.1/zh/apis.html#mysql-real-connect
printf("OK
");//成功,输出OK
return 0;
}
else {
printf("ERORR
");//失败输出ERORR
}
}
简单编译下:gcc -0 test_sql test_sql.c -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
悲催的来了:test_sql.c:2: fatal error: mysql.h: 没有那个文件或目录.
居然告诉我说没有mysql.h这个文件,可是实验了,我确实安装了mysql了啊。。。。。。。
我想可能是缺少lib库了吧,百度啊,google啊,一顿搜,哦!~
原来是缺少libmysqlclient-dev,OK安装就是了,apt-get install libmysqlclient-dev
继续编译,结果:
test_sql.c: In function ‘main’:
test_sql.c:7: warning: passing argument 1 of ‘mysql_init’ from incompatible pointer type
/usr/include/mysql/mysql.h:434: note: expected ‘struct MYSQL *’ but argument is of type ‘struct MYSQL **’
test_sql.c:8: warning: passing argument 1 of ‘mysql_real_connect’ from incompatible pointer type
/usr/include/mysql/mysql.h:441: note: expected ‘struct MYSQL *’ but argument is of type ‘struct MYSQL **’

估计你是通过YUM安装的.
要想有mysql.h需要安装对应的DEV包.

可能
1. include 路径问题
2. 没有安装dev包。

可能是下载的文件有问题,建议去官网下载


linux下载安装的软件在哪里?
1、首先在LINUX系统中,打开桌面的主目录文件夹,然后点击下载目录。2、然后点击文件中的下载目录,如下图所示。3、进入后右键选择在终端中打开,如下图所示。4、接着在终端看到一个$符号,前面的是中文下载证明终端已经进入了这个目录,然后输入命令:chmod +x +文件名回车。给予run文件可执行权限。5...

Linux下怎么安装软件?
一般来说,Linux的应用软件的可执行文件会存放在\/usr\/local\/bin目录下!不过这并不是“放四海皆准”的真理,最可靠的还是看这个软件的INSTALL和README文件,一般都会有说明。2. 卸载:1)、打开一个SHELL,即终端 2)、用CD 命令进入配置后的软件目录,即安装时的目录 3)、执行反安装命令:make uninst...

在Linux下怎么安装和卸载软件
在Windows下安装软件时,只需运行软件的安装程序(setup、install等)或者用zip等解压缩软件解开即可安装,运行反安装程序(uninstall、unware、卸载等)就能将软件清除干净,完全图形化的操作界面,简单到只要用鼠标一直点击下一步就可以了。而Linux好象就不一样了,很多的初学者都抱怨在Linux下安装和卸载软件...

linux安装软件的方式有哪几种?
1.图形界面安装:synapticsoftwaremanagement(好像都是deb包)2.终端命令行方式。安装源程序包(tar,Z,gz,bz2,tar.gz,tar.bz2,tar.Z,rar,zip),rpm包,deb包(详情见下)3.终端apt方式。(好像都是deb包)通过apt-get下载下来的包存放在\/var\/cache\/apt\/archives。其他,无须安装的,如bin文件,...

Linux下软件的基本安装和卸载
Linux下软件的安装主要有两种不同的形式。第一种安装文件名为xxx.tar.gz;另一种安装文件名为xxx.i386.rpm。以第一种方式发行的软件多为以源码形式发送的;第二种方式则是直接以二进制形式发送的。对于第一种,安装方法如下:1 .首先,将安装文件拷贝至你的目录中。例如,如果你是以root身份登录上的...

需要安装的软件放在linux的哪个目录下
Linux下安装应用程序时它的默认安装路径。默认目录一般建议为 \/usr 所有的软件都仍这里。一般没有选择余地,除非不想用这个程序……安装方式一般是:1、rpm或者deb这种软件包,一般双击安装就行了,当然更好的办法是在系统的软件管理器里直接安装,这样可以从网上自动下载安装。2、binrun等文件,这是可...

求linux下如何安装程序
各个支持RPM格式的Linux常见软件的RPM包可以在网站rpmfind.net中找到。 1.安装 命令格式: rpm-i(or--install) options file1.rpm ... fileN.rpm 参数: file1.rpm...fileN.rpm指将要安装的RPM包的文件名。 详细选项: -h(or—hash)安装时输出hash记号;test只对安装进行测试,并不实际安装;--percent以...

需要安装的软件放在linux的哪个目录下
1、进入官网,点击“jdk download”2、选中“accept”3、选择Linux版本的jdk-9.0.4_linux-x64_bin.tar.gz下载 4、打开x-shell,连接到linux系统 5、JDK一般安装到\/usr目录下。输入命令:cd \/usr\/输入命令:mkdir java新建一个文件夹,用作Java的安装目录。6、将下载好的jdk文件上传至\/usr\/java...

linux下的安装文件是什么格式的
说一下Linux系统所谓的后缀名例如exe这类的是没有任何关系的。你把安装包后缀名改成rmvb一样可以安装。Windows系统不行。第二种软件包。就是脚本安装包也是压缩包tar之类的也要先解压。它的安装方法也是输入命令。但是它使用范围大。前面的包rpm 之类的只能安装在你下载的Linux系统上。不能用其他的Linux...

linux安装软件(linux安装软件有哪几种方式)
1.安装 #dpkg-iMYsoftware-1.2.-1.deb 2.卸载 #dpkg-eMYsoftware 使用源代码进行软件安装和RPM安装方式相比,使用源代码进行软件安装会复杂一些,但是用源代码安装软件是Linux下进行软件安装的重要手段,也是运行Linux的最主要的优势之一。使用源代码安装软件,能按照用户的需要选择定制的安装方式进行安装...

平江区19434424797: linux中已经安装了mysql,但是查询不到安装的包,没办法卸载. -
闻封克林: 要区分从源安装和从代码编译安装两种,从代码编译安装不会修改软件包管理库,所以查新该库会显示未安装,这种情况的卸载方式是在代码目录执行make uninstall

平江区19434424797: 请问我在linux装了mysql,但是却忘记了装在哪个路径,如何找到路径呀? -
闻封克林: 问个问题就0分 用 find 你可以执行 find -name "mysql*" 当前是从根目录下查找的 或者你也可以指定目录 find /etc -name "mysql*" 看能否找到以mysql开头的文件或文件夹

平江区19434424797: Linux下安装mysql失败,提示找不到mysqld.sock -
闻封克林: mysql会按顺序读取配置文件/etc/my.conf,/etc/mysql/my.conf,/usr/etc/my.con,~/.my.conf/etc/my.conf中的 [client] port = 3306 socket = /tmp/mysql.sock [mysqld] port = 3306 socket = /tmp/mysql.sock 和/etc/mysql/my.conf中socket=/var/run/mysqld/...

平江区19434424797: 如何查看linux下mysql安装目录 -
闻封克林: 一、查看文件安装路径由于软件安装的地方不止一个地方,所有先说查看文件安装的所有路径(地址).这里以mysql为例.比如说我安装了mysql,但是不知道文件都安装在哪些地方、放在哪些文件夹里,可以用下面的命令查看所有的文件路...

平江区19434424797: linux mysql问题 -
闻封克林: 并不是你没有安装成功,而是mysql无法找到mysql.sock这个文件,这个问题在linux下非常常见的,mysql.sock一般会在/var/lib目录下,你所要做的就是将这个文件拷到/var/lib/mysql目录下,记得我当初在安装mysql的时候是这样解决的,我用的是Ubuntu,相信你的应该也差不多吧.

平江区19434424797: 在linux下安装的mysql找不到头文件mysql.h,怎么办 -
闻封克林: 估计你是通过YUM安装的. 要想有mysql.h需要安装对应的DEV包.

平江区19434424797: linux怎么查询是否安装过mysql -
闻封克林: 通过rpm查看 查看软件是否安装 首先我们需要查看软件是否已经安装,或者说查看安装的软件包名称.如查找是否安装mysql接着根据 rpm -ql 列出软件包安装的文件综合上述以上的问题,可以直接使用 rpm -qal |grep mysql 查看mysql所有安装...

平江区19434424797: 在linux下找不到mysql.sock怎么办 -
闻封克林: 先启动MySQL服务. service mysql start 或者/etc/init.d/mysql start

平江区19434424797: linux如何查看有没有安装mysql -
闻封克林: 使用命令 yum list all | grep msyql 如果有的话 你在其后看到有没有显示是 install 如果有就是安装了 不过此条命令只能看到由rpm包安装的mysql 如果是编译安装的 查看一下目录 ls /usr/bin/local 看看这个里边有没有mysql目录,,有证明安装了mysql

平江区19434424797: ubuntu18.04 安装的mysql5.7怎么找不到库啊? -
闻封克林: 你需要重新安装那些被 “dpkg warning” 缺失的软件. 尝试修复: 强制修复1 sudo apt-get -f install2. 如果上一步无效.你需要过滤出被 dpkg warning 的软件,然后执行下面的命令,重新挨个安装 1 sudo apt-get install --reinstall "package ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网