使用Visual Studio编译MYSQL CONNECTOR C/C++(MYSQLCPPCONN)

5 篇文章 0 订阅

#所需工具
CMAKE
BOOST
MySQL Community Server 安装版绿色版都行
MySQL Connector/C 下载源码
MySQL Connector/C++ 下载源码
Visual Studio 不说了, 没它拿啥编译
#编译代码
1. 安装MySQL Server, 最好可以正常跑起来
2. 安装CMAKE
3. 编译Connector/C(因为Connector/C++依赖Connector/C)
解压缩源码, 比如释放到F盘, 并改名为mysqlc(纯粹为了方便说明)
打开CMAKE-GUI(在安装目录里找), Source Path选择"F:\mysqlc", Build Path选择"F:\buildc"
Build Path可以和Source Path一样
点Configure, 选择编译器与平台, 点Finish, 出现"Configuring done"后点Generate
出现"Generating done"后, CMAKE部分完事儿
在"F:\buildc"里找项目文件(sln), 打开, 编译(注意Debug与Release), C组件搞定
4. 编译Connector/C++
解压缩, 改名mysqlcpp
打开CMAKE-GUI, 目录选"F:\mysqlcpp"和"F:\buildcpp"
点Configure, 出现错误, 需要BOOST, 解压到"F:\boost"
CMAKE界面点击"Add Entry"(添加环境变量)
Name=“BOOST_ROOT”, Type=“String”, Value=“F:\boost”, OK
再点Configure, 出错, 找不到"mysql.h", 打开FindMySQL.cmake查看内容, 再添加环境变量
Name=“MYSQL_INCLUDE_DIR”, Type=“Path”, Value=“F:\mysqlc\include”, OK
再点Configure, 出错, 缺"MYSQL_LIB", 注意, 这里决定动态链接还是静态链接
若静态链接, 添加环境变量, Name=“MYSQLCLIENT_STATIC_LINKING”, Type=BOOL, Value打钩
再添加环境变量, Name=“MYSQL_LIB”, Type=“FILEPATH”,
Value=“F:\buildc\libmysql\Release\mysqlclient.lib”(静态链接)
或者 “F:\buildc\libmysql\Release\libmysql.lib”(动态链接)
再点Configure, 出错, 需要MySQL Server版本
再添加环境变量, Name=“MYSQL_VERSION”, Type=“String”, Value=“x.x.x”(MySQL Server版本号)
再点Configure, 可以安心等一会儿了, 出现"Configuring done"再点Generate
完事儿后就可以编译去了
编译时还会出错(有完没完?), 缺文件
从MySQL Server的安装目录的include里找my_config.h/mysql_version.h/mysqld_error.h三个文件
复制到"F:\mysqlc\include"中
继续编译, 出错(要疯了), “MYSQL_TYPE_JSON"未定义, 看源码得知这东西应该是个枚举类型
但值是多少? 搜索引擎, 搜索时带上另一个枚举的名字
比如我这样搜索"MYSQL_TYPE_JSON MYSQL_TYPE_NEWDECIMAL”
得知"MYSQL_TYPE_JSON=245", 加进去
继续编译, 终于大功告成, 编译成功.
#总结
编译Connector/C很简单, 几步就搞定.
而编译Connector/C++就比较坎坷了, 熟练后事先添加环境变量会好很多
BOOST_ROOT String
MYSQL_INCLUDE_DIR Path
MYSQL_LIB FilePath
MYSQLCLIENT_STATIC_LINKING BOOL
MYSQL_VERSION String
注: Connector/C++依赖MYSQL的SDK, 尽量使用Connector/C带的文件, 没有再去MySQL Server里找文件
编译时注意Debug/Release, MD/MT等参数, 要保持一致
#附
2016-3-10 13:12:01

CMAKE 3.5.0 非安装板
BOOST 1.60.0
MySQL Community Server 5.7.11 非安装版
MySQL Connector/C 6.1.6
MySQL Connector/C++ 1.1.7
Visual Studio 2010
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值