MySQL Connector/C++ Mac Xcode

来源:互联网 发布:moment.js日期加一天 编辑:程序博客网 时间:2024/06/06 08:39

因为学校的作业要求,需要配置MySQL的Connector/C++,在网上查了很多博客和文档,最后终于配置好了,在这里和大家分享一下。

安装和配置MySQL

安装MySQL并不难,直接从官网上下载、安装就行了。

安装好之后可以找到它的APP,MySQLWorkbench,这是它的图形界面的程序,做的还可以,具体的第一次的配置什么的请看这篇文章,讲的很清楚。

说实话,这篇文章我当时就是照着上面的文章操作的,只不过在一些小地方上有所不同(这也导致我花了好长时间),所以本文会和上面的文章基本上差不多。

MySQL的命令行工具

MySQL虽说有图形界面的APP,但是一个(准)程序员还是用命令行操作起来更有范,这确实也要更爽,因为不用用鼠标。

在Mac的终端上启动MySQL,正常情况下需要输入MySQL的完整地址,如:/usr/local/mysql/bin/mysql,不像Windows下直接输入mysql就可以启动。当然,这个很好解决,请在你的终端(推荐使用zsh)下找到你的配置文件,加上下面的两行:

alias mysql=/usr/local/mysql/bin/mysqlalias mysqladmin=/usr/local/mysql/bin/mysqladmin

alias是别名、化名的意思,所以大家可以理解它们是干什么的了吧。

现在登录MySQL就只用输入:

mysql -u 用户名 -p

然后键入密码就可以了,但是我更懒,觉得这也太长了,于是我就又加了一句:

alias myr='mysql -u root -p'

这样就只用输入myr,然后输密码就可以了。

正式配置Connector/C++之前

当然了,首先要下载Connector/C++,到官网下就行了,下载的时候要注意,网页会自动的根据你的系统选择相应的包,但是我们需要的是源码,所以下载之前,请先选择Suorce Code

这里写图片描述

(然而我也不知道为什么要选择源码,而不是官方准备好的相应的版本(⊙﹏⊙)b,还望高人指点)

然后是下载CMake和BOOST。

(用Safari下载可能会比较慢,或者直接中途断掉,推荐用迅雷下载,记得打开下载优先)

CMake下载下来就直接是个APP了,但是我们是要在终端上用它,所以要进入CMake.app的内部,找到它的命令端工具,然后在终端的配置文件里添加它的路径,我的就是:

alias cmake=/Applications/CMake.app/Contents/bin/cmake

BOOST安装:
1. 下载完成后解压文件
2. 在终端里进入解压后的文件夹
3. 输入sh bootstrap.sh(或者./bootstrap.sh —prefix=“安装目录” 输入时去掉引号)
4. ./b2 install,进行安装,默认的位置是usr/local(include和lib里面)

正式配置Connector/C++

编译Connector/C++:
进入Connector/C++下载下来解压后的文件夹里面,输入:

cmake . -DBOOST_ROOT:STRING=/Users/mba/Downloads/boost_1_55_0/ 

其中,/Users/mba/Downloads/boost_1_55_0/是你下载BOOST后解压文件夹所在位置。执行成功后,会显示:

-- Generating done-- Build files have been written to: /Users/mba/Downloads/mysql-connector-c++-1.1.3

执行:
1. make clean
2. make
3. sudo make install

其中sudo是以管理员的身份运行的意思,需要你输入密码。执行成功就算好了,现在要来配置Xcode了。

Xcode环节

  1. 新建一个Command Line Tool工程
  2. 在Build Setting里面的Header Search Paths添加:/usr/local/include/usr/local/mysql/include
  3. 在Library Search Paths添加:/usr/local/lib/usr/local/mysql/lib
  4. 在Other Linker Flags加-lmysqlcppconn -lm -lmysqlclient -lz
    这里写图片描述
  5. 在Build Phases里面的Link Binary With Libraries里面添加/usr/local/mysql-5.7.9-osx10.9-x86_64/lib/libmysqlclient.20.dylib(根据系统和版本可能会有所不同,大家去MySQL的目录下面找找就对了)

大功告成!!!撒花!!!

测试代码:

#include <stdio.h>#include <mysql.h>int main (int argc, const char * argv[]){    MYSQL *connection, mysql;    mysql_init(&mysql);    connection = mysql_real_connect(&mysql,"127.0.0.1","root","psw","database",0,0,0);    if (connection == NULL)    {        //unable to connect        printf("Oh Noes!\n");    }    else    {        printf("Connected.\n");    }    return 0;}

参考博文:
1. http://blog.csdn.net/abcjennifer/article/details/16983929
2. http://blog.csdn.net/olivor/article/details/19698129
3. http://blog.csdn.net/pyang1989/article/details/41725747

0 0
原创粉丝点击