sysbench的安裝

sysbench 0.4.12版本可以在我的網盤下載http://pan.baidu.com/s/1jHAGYhS

我的設備上安裝的是Centos5.5的裁剪版本,沒有gcc,沒有rpm,沒有yum,沒有一切東西。我只能在其它Centos5.5上編譯sysbench,然後拷貝到我的系統中進行測試。

首先下載sysbench-0.4.12.zip


將zip文件解壓,上傳到centos5.5的/soft目錄下


首先要生成Makefile文件

安裝libtool

[root@localhost sysbench-0.4.12]# yum -y install libtool
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: mirror.lzu.edu.cn
 * base: mirror.lzu.edu.cn
 * extras: mirror.bit.edu.cn
 * updates: ftp.jaist.ac.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package libtool.x86_64 0:1.5.22-7.el5_4 set to be updated
--> Processing Dependency: autoconf >= 2.50 for package: libtool
--> Processing Dependency: automake >= 1.4 for package: libtool
--> Running transaction check
---> Package autoconf.noarch 0:2.59-12 set to be updated
--> Processing Dependency: imake for package: autoconf
---> Package automake.noarch 0:1.9.6-3.el5 set to be updated
--> Running transaction check
---> Package imake.x86_64 0:1.0.2-3 set to be updated
--> Finished Dependency Resolution
執行./autogen.sh

[root@localhost sysbench-0.4.12]# ./autogen.sh 

[root@localhost sysbench-0.4.12]# 
[root@localhost sysbench-0.4.12]# ls
acinclude.m4  autogen.sh      ChangeLog  configure     COPYING  INSTALL     Makefile.am  missing        README          sysbench
aclocal.m4    autom4te.cache  config     configure.ac  doc      install-sh  Makefile.in  mkinstalldirs  README-WIN.txt  TODO
[root@localhost sysbench-0.4.12]# 
安裝mysql

[root@localhost sysbench-0.4.12]# yum -y install mysql
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: mirror.lzu.edu.cn
 * base: mirror.lzu.edu.cn
 * extras: mirror.bit.edu.cn
 * updates: ftp.jaist.ac.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package mysql.i386 0:5.0.95-5.el5_9 set to be updated
--> Processing Dependency: perl(DBI) for package: mysql
---> Package mysql.x86_64 0:5.0.95-5.el5_9 set to be updated
--> Running transaction check
---> Package perl-DBI.x86_64 0:1.52-2.el5 set to be updated
--> Finished Dependency Resolution
接下來執行./configure命令

[root@localhost sysbench-0.4.12]# ./configure --prefix=/usr/local/sysbench --with-mysql-include=/usr/include/mysql

checking build system type... Invalid configuration `x86_64-unknown-linux-': machine `x86_64-unknown-linux' not recognized
configure: error: /bin/sh config/config.sub x86_64-unknown-linux- failed
報錯,原因是,沒有安裝gcc,我們安裝一下gcc

[root@localhost sysbench-0.4.12]# yum -y install gcc
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: mirror.lzu.edu.cn
 * base: mirror.lzu.edu.cn
 * extras: mirror.bit.edu.cn
 * updates: ftp.jaist.ac.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package gcc.x86_64 0:4.1.2-55.el5 set to be updated
--> Processing Dependency: cpp = 4.1.2-55.el5 for package: gcc
--> Processing Dependency: libgcc >= 4.1.2-55.el5 for package: gcc
--> Processing Dependency: libgomp >= 4.1.2-55.el5 for package: gcc
--> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc
--> Running transaction check
---> Package cpp.x86_64 0:4.1.2-55.el5 set to be updated
---> Package glibc-devel.x86_64 0:2.5-123.el5_11.3 set to be updated
--> Processing Dependency: glibc = 2.5-123.el5_11.3 for package: glibc-devel
--> Processing Dependency: glibc-headers = 2.5-123.el5_11.3 for package: glibc-devel
--> Processing Dependency: glibc-headers for package: glibc-devel
---> Package libgcc.i386 0:4.1.2-55.el5 set to be updated
---> Package libgcc.x86_64 0:4.1.2-55.el5 set to be updated
---> Package libgomp.x86_64 0:4.4.7-1.el5 set to be updated
--> Running transaction check
--> Processing Dependency: glibc = 2.5-49 for package: nscd
---> Package glibc.i686 0:2.5-123.el5_11.3 set to be updated
--> Processing Dependency: glibc-common = 2.5-123.el5_11.3 for package: glibc
---> Package glibc.x86_64 0:2.5-123.el5_11.3 set to be updated
---> Package glibc-headers.x86_64 0:2.5-123.el5_11.3 set to be updated
--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers
--> Processing Dependency: kernel-headers for package: glibc-headers
--> Running transaction check
---> Package glibc-common.x86_64 0:2.5-123.el5_11.3 set to be updated
---> Package kernel-headers.x86_64 0:2.6.18-412.el5 set to be updated
---> Package nscd.x86_64 0:2.5-123.el5_11.3 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved
再執行./configure命令,正確生成了Makefile文件

[root@localhost sysbench-0.4.12]# ./configure --prefix=/usr/local/sysbench --with-mysql-include=/usr/include/mysql 

[root@localhost sysbench-0.4.12]# ls
acinclude.m4  autogen.sh      ChangeLog  config.log     configure     COPYING  INSTALL     libtool   Makefile.am  missing        README          sysbench
aclocal.m4    autom4te.cache  config     config.status  configure.ac  doc      install-sh  Makefile  Makefile.in  mkinstalldirs  README-WIN.txt  TODO

[root@localhost sysbench-0.4.12]# make
[root@localhost sysbench]# make install

進入到sysbench目錄下,發現生成了可執行文件sysbench

[root@localhost sysbench]# pwd
/soft/sysbench-0.4.12/sysbench
[root@localhost sysbench]# ls
CMakeLists.txt  db_driver.h  drivers   Makefile.am  sb_list.h    sb_logger.h  sb_options.c  sb_options.o  sb_timer.h  sb_win.c  sysbench    sysbench.h  tests
db_driver.c     db_driver.o  Makefile  Makefile.in  sb_logger.c  sb_logger.o  sb_options.h  sb_timer.c    sb_timer.o  sb_win.h  sysbench.c  sysbench.o
[root@localhost sysbench]# 

至此,我們成功編譯了sysbench文件。

用ldd命令看一下sysbench的依賴庫

[root@localhost sysbench]# ldd sysbench
        libmysqlclient_r.so.15 => /usr/lib64/mysql/libmysqlclient_r.so.15 (0x00002b5f8ae25000)
        libz.so.1 => /lib64/libz.so.1 (0x00002b5f8b199000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00002b5f8b3ad000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x00002b5f8b5e6000)
        libssl.so.6 => /lib64/libssl.so.6 (0x00002b5f8b7fe000)
        libcrypto.so.6 => /lib64/libcrypto.so.6 (0x00002b5f8ba4c000)
        librt.so.1 => /lib64/librt.so.1 (0x00002b5f8bd9f000)
        libm.so.6 => /lib64/libm.so.6 (0x00002b5f8bfa8000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b5f8c22b000)
        libc.so.6 => /lib64/libc.so.6 (0x00002b5f8c448000)
        libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2 (0x00002b5f8c7a1000)
        libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x00002b5f8c9cf000)
        libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00002b5f8cc65000)
        libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3 (0x00002b5f8ce67000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00002b5f8d08c000)
        /lib64/ld-linux-x86-64.so.2 (0x00002b5f8ac07000)
        libkrb5support.so.0 => /usr/lib64/libkrb5support.so.0 (0x00002b5f8d291000)
        libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00002b5f8d499000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00002b5f8d69b000)
        libselinux.so.1 => /lib64/libselinux.so.1 (0x00002b5f8d8b1000)
        libsepol.so.1 => /lib64/libsepol.so.1 (0x00002b5f8dac9000)


其中/usr/lib64/mysql/libmysqlclient_r.so.15這個文件在我們系統中是沒有的,需要手動拷貝進去。


謝謝大家。








發佈了31 篇原創文章 · 獲贊 3 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章