tpcc测试安装错误:/usr/bin/ld: cannot find -lmysqlclient

Posted DBA修炼之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tpcc测试安装错误:/usr/bin/ld: cannot find -lmysqlclient相关的知识,希望对你有一定的参考价值。

一、tpcc安装步骤

github地址:Percona-Lab/tpcc-mysql

1.下载github代码

git clone https://github.com/Percona-Lab/tpcc-mysql

2.编译

cd /tpcc-mysql/src/,执行make时报错:

cc load.o support.o `mysql_config --libs_r` -lrt -o ../tpcc_load
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
make: *** [../tpcc_load] Error 1

3.解决办法

查看mysql有关的库的所在位置

ldconfig -v | grep mysql
ldconfig: Can\'t stat /libx32: No such file or directory
ldconfig: Path `/usr/lib\' given more than once
ldconfig: Path `/usr/lib64\' given more than once
ldconfig: Can\'t stat /usr/libx32: No such file or directory
ldconfig: Cannot stat /lib64/libmysqlclient.so: No such file or directory
ldconfig: Cannot stat /lib64/libmysqlclient_r.so: No such file or directory
/usr/lib64/mysql:
	libmysqlclient.so.18 -> libmysqlclient.so.18.0.0

建立软连接

ln -s /usr/lib64/mysql/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.16

将软连接所在目录加入到/etc/ld.so.conf

ldconfig -v

4.再次执行make

 make
cc load.o support.o `mysql_config --libs_r` -lrt -o ../tpcc_load
cc -w -O3 -g -I. `mysql_config --include`  -c main.c
cc -w -O3 -g -I. `mysql_config --include`  -c spt_proc.c
cc -w -O3 -g -I. `mysql_config --include`  -c driver.c
cc -w -O3 -g -I. `mysql_config --include`  -c sequence.c
cc -w -O3 -g -I. `mysql_config --include`  -c rthist.c
cc -w -O3 -g -I. `mysql_config --include`  -c sb_percentile.c
cc -w -O3 -g -I. `mysql_config --include`  -c neword.c
cc -w -O3 -g -I. `mysql_config --include`  -c payment.c
cc -w -O3 -g -I. `mysql_config --include`  -c ordstat.c
cc -w -O3 -g -I. `mysql_config --include`  -c delivery.c
cc -w -O3 -g -I. `mysql_config --include`  -c slev.c
cc main.o spt_proc.o driver.o support.o sequence.o rthist.o sb_percentile.o neword.o payment.o ordstat.o delivery.o slev.o `mysql_config --libs_r` -lrt -o ../tpcc_start

5.创建表,添加外键,导入数据

mysql -S /tmp/mysql.sock57 tpcc1000 < create_table.sql
mysql -S /tmp/mysql.sock57 tpcc1000 < add_fkey_idx.sql
./tpcc_load -h127.0.0.1 -d tpcc1000 -u root -p 123456 -P 3357 -w 1

6.测试

./tpcc_start -h 127.0.0.1 -d tpcc1000 -u root -p 123456 -P 3357 -w 1 -c 8 -r 1 -l 300 -i 10
成功安装tpcc进行测试

以上是关于tpcc测试安装错误:/usr/bin/ld: cannot find -lmysqlclient的主要内容,如果未能解决你的问题,请参考以下文章

/usr/bin/ld: cannot find -lz

编译错误 /usr/bin/ld: 无法打开输出文件 bin/server: 没有这样的文件或目录

编译错误:/ usr / bin / ld:找不到-lclntsh

/usr/bin/ld: cannot find -lxxx 的解决办法

/usr/bin/ld: 找不到 -lXext 依赖问题

/usr/bin/ld: cannot find -lxxx 的解决办法