mysql++ 3.2.3 源码安装

https://tangentsoft.com/mysqlpp/home

下载 wget https://tangentsoft.com/mysqlpp/releases/mysql++-3.2.3.tar.gz

解压 tar -zxvf 

进入目录 配置

./configure  --help 

./configure  --prefix=/local/mysql++ --with-mysql=/app/mysql/mysql_home --with-mysql-lib=/app/mysql/mysql_home/lib/  --with-mysql-include=/app/mysql/mysql_home/include

make 

make install

完毕

生成静态库

ar rcu libmysqlpp.a mysqlpp_*.o  ssqls2parse_parsev2.o

makefile 里面写要注意以下几点

1)静态库 和 动态库混合时 必须写死静态库的全路径

2)g++编译时 上层逻辑必须写在前面,底层逻辑写在后面。不然后面的是找不到前面的引用的。

3)如果编译选项中 用了 -static 则全部都会找静态库,找不到还会报错。

4)混合写时 -L指定 和 静态写死重合没有关系,会找写死的。

正确写法

g++ -g -std=c++11   ./o/dbserver/dbserver.o -L/local/mysql++/lib -L/app/mysql/mysql_home/lib /local/mysql++/lib/libmysqlpp.a /app/mysql/mysql_home/lib/libmysqlclient.a -lpthread -lnsl -lz -lm  -ldl -lrt  -o ./bin/dbserver

错误写法

g++ -g -std=c++11   -L/local/mysql++/lib -L/app/mysql/mysql_home/lib /local/mysql++/lib/libmysqlpp.a /app/mysql/mysql_home/lib/libmysqlclient.a -lpthread -lnsl -lz -lm  -ldl -lrt  ./o/dbserver/dbserver.o  -o ./bin/dbserver

原文地址:https://www.cnblogs.com/heling/p/9194188.html