linux

linux下编译安装mysql-connector-cpp

首先在github上下载mysql-connector-cpp

git clone https://github.com/mysql/mysql-connector-cpp.git

git上面有两个分支,2.0版本是支持mysql作为文档存储的接口,1.1版本是支持正常的关系数据库存储接口

首先我们编译安装2.0版本,进入代码目录执行

cmake .

cmake –build . –config CCC

cmake –build . –target install –config CCC

到这里已经安装完毕.

然后到testapp下编译测试样例

cmake .

提示出错,WITH-CONCPP没有设置,我试了编辑/etc/profile文件,设置这个变量为/usr/local/mysql/connector-c++-2.0/,但是仍然提示没有设置,于是我将CMakeLists中的

set(WITH_CONCPP $ENV{WITH_CONCPP} CACHE PATH “MySQL Connector/C++ 2.0 install location”)

改为

set(WITH_CONCPP “/usr/local/mysql/connector-c++-2.0/” CACHE PATH “MySQL Connector/C++ 2.0 install location”)

继续cmake .

提示出错,在/usr/local/mysql/connector-c++-2.0/lib64下找不到依赖库

那么将目录下生成的 libmysqlcppconn2.so libmysqlcppconn2.so.1 libmysqlcppconn2.so.1.0 拷贝到/usr/local/mysql/connector-c++-2.0/lib64中,没有的创建一个即可。

cmake .

make

在run文件夹下面生成了两个可执行文件

devapi_test xapi_test

这两个文件的区别在于,xapi_test实现了c的接口,是通过mysql的一个叫做x plugin的插件连接mysql的,而devapi则是使用了c++的接口。所以如果使用xapi接口的话,mysql安装时必须安装x plugin

接下来编译安装1.1版本,先将当前的改动都commit了,然后

git checkout 1.1,

cmake .

如果出错。

报缺少boost库错误,可以

sudo apt-get install libboost-all-dev

报缺少mysql.h等错误,可以通过sudo apt-get install libmysql++-dev

然后make

sudo make install

然后将生成的动态库拷贝的/usr/local/lib下

sudo cp libmysqlcppconn.so* /usr/local/lib/

Be the First to comment.

Leave a Comment

电子邮件地址不会被公开。 必填项已用*标注