您的位置:首页 > 数据库 > MySQL

Mac OS X 使用xcode编写连接mysql的C程序

2017-11-30 22:49 666 查看

1. 下载并安装Connector/C

1.1 在https://dev.mysql.com/downloads/connector/c/ 下载mac os x的Connector/C,本文下载的是 mysql-connector-c-6.1.11-macos10.12-x86_64

1.2安装Connector/C,默认安装路径为 /usr/local/mysql-connector-c-6.1.11-macos10.12-x86_64

2. 获取配置信息

在终端运行

/usr/local/mysql-connector-c-6.1.11-macos10.12-x86_64/bin/mysql_config --libs


会输出以下信息

/usr/local/mysql-connector-c-6.1.11-macos10.12-x86_64/lib -l


3. 动态链接libmysqlclient.18.dylib

将libmysqlclient.18.dylib链接到/usr/lib目录下,在终端输入:

$ cd /usr/lib

$ sudo ln -fs /usr/local/mysql-connector-c-6.1.11-macos10.12-x86_64/lib/libmysqlclient.18.dylib libmysqlclient.18.dylib


4. 配置Xcode

4.1 打开Xcode,新建一个命令行项目(command line)

4.2 配置项目属性(Building Settings)

4.2.1 在Other Linker Flags里输入

-L/usr/local/mysql-connector-c-6.1.11-macos10.12-x86_64/lib -lmysqlclient -lz -lm


4.2.2 在Header Search Paths里输入

/usr/local/mysql-connector-c-6.1.11-macos10.12-x86_64/include


4.2.3 在Library Search Paths里输入

/usr/local/mysql-connector-c-6.1.11-macos10.12-x86_64/lib


5. 运行示例代码

#include <stdio.h>

#include <mysql.h>

int main(int argc, const char * argv[])

{

MYSQL *connection, mysql;

mysql_init(&mysql);

connection = mysql_real_connect(&mysql,"localhost","root","123456","Study",0,0,0);

if (connection == NULL)

{

printf("连接失败:%s\n", mysql_error(&mysql));

}

else

{

printf("连接成功, 服务器版本: %s, 客户端版本: %s.\n", MYSQL_SERVER_VERSION, mysql_get_client_info());

}

mysql_close(&mysql);

return 0;

}


运行结果为



说明连接成功。

第一次进行上述操作时,直接很顺利的完成了:)

(以下为我第二次进行上述操作时遇到的问题和尝试的解决方法)

1. 如果出现 dyld: Library not loaded: libmysqlclient.18.dylib错误,表示没有将mysql的动态库链接到/usr/lib目录下。说明第3步出现问题。

2. 如果第3步出现 operation not permitted , 请接着往下看

第一种方法:

* 1.重启Mac

* 2.按住command + R 进入恢复模式

* 3.在实用工具中找到终端 输入 csrutil disable 关闭Rootless 输入csrutil enable 开启Rootless

* 4.重启Mac

第二种方法(本机适用方法):

在终端输入命令

mkdir -p /usr/local/lib
ln -s /usr/local/mysql/lib/libmysql* /usr/local/lib


(第一句执行时可能报错为权限不足,则改为
sudo mkdir -p /usr/local/lib
)

参考博文链接

https://lorui.com/mac-os-x-xcode-mysql-c.html

http://blog.csdn.net/a1610770854/article/details/51100479

http://blog.csdn.net/u010499721/article/details/49048643
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql mac os x xcode