Linux(CentOS7.0)下 C访问MySQL (转)
按語:
???? 最近項目在云服務器上 centos6.8,安裝了mysql5.5.39 server和client,但C連接不知所措;
后在官網下載了 devel、share 、share-compact三個文件并安裝;
https://downloads.mysql.com/archives/community/
參看下面取版本號的例子;
?? ?gcc mysqlversion.c -lmysqlclient ,用此命令編譯并運行能得到結果。
? Mysql client version:50539
??*** 2019/3/28修改: ? gcc mysqlversion.c -L/usr/lib64/mysql -lmysqlclient?? (安裝了5.7.24)
創建測試文件: mysqlVersion.c
[root@iZ23xz8uttcZ test]# vi mysqlVersion.c
寫入一下代碼:
#include <stdio.h>
#include <mysql/mysql.h>
void mysql_version( void )
{
? ? printf("MySQL client version : %d \n",mysql_get_client_version());
}
int main(int argc,char *argv[])
{
? ? mysql_version();
? ? return 0;
}
編譯:
[root@iZ23xz8uttcZ test]# gcc -c -I /usr/include/mysql mysqlVersion.c -o mysqlVersion.o
error提示:
找不到“mysql.h”文件。
解決方案:?
[root@iZ23xz8uttcZ ~] # rpm -ivh ?MySQL-devel-advanced-5.6.22-1.el7.x86_64.rpm?
鏈接:
[root@iZ23xz8uttcZ test]# gcc ?-l mysqlclient ?mysqlVersion.o -o mysqlVersion
error提示:
mysqlVersion.o: In function `mysql_version':
mysqlVersion.c:(.text+0x5): undefined reference to `mysql_get_client_version'
collect2: error: ld returned 1 exit status
解決方案:
[root@iZ23xz8uttcZ ~] # rpm -ivh ?MySQL-shared-advanced-5.6.22-1.el7.x86_64.rpm
[root@iZ23xz8uttcZ ~] # rpm -ivh ?MySQL-shared-compat-advanced-5.6.22-1.el7.x86_64.rpm
執行:
[root@iZ23xz8uttcZ test]# ./mysqlVersion?
MySQL client version : 50622?
轉?http://blog.csdn.net/u010587274/article/details/50970375
?
轉載于:https://www.cnblogs.com/xihong2014/p/9105311.html
總結
以上是生活随笔為你收集整理的Linux(CentOS7.0)下 C访问MySQL (转)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Beta阶段——第4篇 Scrum 冲刺
- 下一篇: iOS开发-登录界面开发(6)Toast