Sysbench 安装

server ENV:

1. Solaris10

2. GCC:3.4.6

3. Mysql: 5.0.24

安装 Sysbench

1. ./configure

success

2. ./make

error info:

gcc: language strconst not recognized
gcc: drv_mysql.c: linker input file unused because linking not done

google N 次, Mysql官方网站上说, 去掉-xstrconst -mt 参数,即

gcc -DHAVE_CONFIG_H -I. -Ihttp://www.cnblogs.com/../config  -I/usr/sfw/include/mysql -xstrconst -mt -D_REENTRANT -D_XOPEN_SOURCE=500 -D_GNU_SOURCE -Ihttp://www.cnblogs.com/../sysbench  -D_REENTRANT  -g -O2 -MT libsbmysql_a-drv_mysql.o -MD -MP -MF .deps/libsbmysql_a-drv_mysql.Tpo -c -o libsbmysql_a-drv_mysql.o `test -f 'drv_mysql.c' || echo './'`drv_mysql.c

改成:

gcc -DHAVE_CONFIG_H -I. -Ihttp://www.cnblogs.com/../config  -I/usr/sfw/include/mysql -D_REENTRANT -D_XOPEN_SOURCE=500 -D_GNU_SOURCE -Ihttp://www.cnblogs.com/../sysbench  -D_REENTRANT  -g -O2 -MT libsbmysql_a-drv_mysql.o -MD -MP -MF .deps/libsbmysql_a-drv_mysql.Tpo -c -o libsbmysql_a-drv_mysql.o `test -f 'drv_mysql.c' || echo './'`drv_mysql.c

 

开始,我只是修改了MakeFile 文件, 把MYSQL_CFLAGS = -I/usr/sfw/include/mysql -xstrconst -mt 中的-xstrconst -mt去掉, 重新make

但在编译时,仍然带上了这个参数,试了无数次才反应过来,这个参数应该是从外面传过来的,也就是configure的时候得到这个参数, makefile中的参数都是默认值,当从sever中得到这些参数的值,就会用server自己的,不用makefile中default的了。  confiugre时得到的server的参数会写在config.status里,所以只需要将修改config.status 文件即可,make && make install 成功!

 

不过solaris8中make的错误信息不一样,还没找到解决方案, 但大体思路应该差不多我想。

gcc: language arch=v9 not recognized

gcc: drv_mysql.c: linker input file unused because linking not done

 

 


posted @ 2009-02-23 15:56  盈盈的工作小纸条  阅读(665)  评论(0编辑  收藏  举报