LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1140|回复: 9

debian5 源码编译mysql5.1.31 无法通过

[复制链接]
发表于 2009-2-28 00:04:14 | 显示全部楼层 |阅读模式
1、最小化安装的debian5,装了gcc g++ ncruse-dev make
2、./configure 通过了,make 出现
d -lcrypt -lnsl -lm  -lpthread
g++ -O3 -fno-implicit-templates -fno-exceptions -fno-rtti -rdynamic -o mysqlmanager mysqlmanager-command.o mysqlmanager-mysqlmanager.o mysqlmanager-manager.o mysqlmanager-log.o mysqlmanager-thread_registry.o mysqlmanager-listener.o mysqlmanager-protocol.o mysqlmanager-mysql_connection.o mysqlmanager-user_map.o mysqlmanager-messages.o mysqlmanager-commands.o mysqlmanager-instance.o mysqlmanager-instance_map.o mysqlmanager-instance_options.o mysqlmanager-buffer.o mysqlmanager-parse.o mysqlmanager-guardian.o mysqlmanager-parse_output.o mysqlmanager-user_management_commands.o mysqlmanager-angel.o  ./.libs/liboptions.a -lpthread -lpthread -lpthread -lpthread libnet.a ../../vio/libvio.a ../../mysys/libmysys.a ../../strings/libmystrings.a ../../dbug/libdbug.a -lz -lpthread -lcrypt -lnsl -lm -lpthread
make[2]: Leaving directory `/usr/src/mysql-5.1.31/server-tools/instance-manager'
make[1]: Leaving directory `/usr/src/mysql-5.1.31/server-tools'
Making all in win
make[1]: Entering directory `/usr/src/mysql-5.1.31/win'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/usr/src/mysql-5.1.31/win'

然后就过不去了
3、我甚至apt-get build-dep mysql 再./configure make ,还是过不去。
4、看了INSTALL-SOURCE ,好像说安gcc和glibc就可以,不过glibc要2.2
debian的glibc被libc6替代
5、是不是不应该是编译环境的问题啊,也不缺少什么啊?./configure都过了。
6、其实我还在centos5.2上试过,也是通不过,好像一样的错误,老是nothing to be done for 什么的。
7、快疯了,不光是mysql,我还什么也没编译成功呢。有编译过朋友帮帮我啊,谢谢了。对了,我./configure什么参数也没加,这有问题吗?
 楼主| 发表于 2009-2-28 12:47:27 | 显示全部楼层
??没人知道吗?大家编译东西全通过的吗?我的debian好像编译什么都有问题,基本上就是退出目录,什么也不做之类。
回复 支持 反对

使用道具 举报

发表于 2009-2-28 13:00:20 | 显示全部楼层
這麼新的 MySQL 怎可能要 glibc-2.2?

Debian 的 glibc 只不過是把二進包的名字改作 libc6,本身仍是 glibc

configure 不帶參數可能會把 MySQL 裝到 /usr/local 裡,你看看 /usr/local/bin 之下是否已裝了 mysqld 之類的?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-28 14:20:43 | 显示全部楼层
Post by d00m3d;1953984
這麼新的 MySQL 怎可能要 glibc-2.2?

Debian 的 glibc 只不過是把二進包的名字改作 libc6,本身仍是 glibc

configure 不帶參數可能會把 MySQL 裝到 /usr/local 裡,你看看 /usr/local/bin 之下是否已裝了 mysqld 之類的?

谢谢回复,这样的,我现在怀疑有什么编译环境没装或是我的一些做法有问题,我才用debian5,想编译安装apache2+php5+mysql5,系统是新做的,用的最小安装,桌面和基本系统没有选。
先apt-get update
apt-get install gcc g++ nurces-dev make (我还用了apt-get build-dep mysql-server)
cd /usr/src
wget http://mirror.khlug.org/mysql/Do ... mysql-5.1.31.tar.gz
tar zxvf mysql-5.1.31.tar.gz
./configure          (可以通过,没报错误,显示了mysql 欢迎使用)
make
就这过不去了,提示
mv -f .deps/mysqlmanager-buffer.Tpo .deps/mysqlmanager-buffer.Po
g++ -DMYSQL_INSTANCE_MANAGER -DMYSQL_SERVER -I. -I../../include -I../../include -I../../include    -O3    -fno-implicit-templates -fno-exceptions -fno-rtti -MT mysqlmanager-parse.o -MD -MP -MF .deps/mysqlmanager-parse.Tpo -c -o mysqlmanager-parse.o `test -f 'parse.cc' || echo './'`parse.cc
mv -f .deps/mysqlmanager-parse.Tpo .deps/mysqlmanager-parse.Po
g++ -DMYSQL_INSTANCE_MANAGER -DMYSQL_SERVER -I. -I../../include -I../../include -I../../include    -O3    -fno-implicit-templates -fno-exceptions -fno-rtti -MT mysqlmanager-guardian.o -MD -MP -MF .deps/mysqlmanager-guardian.Tpo -c -o mysqlmanager-guardian.o `test -f 'guardian.cc' || echo './'`guardian.cc
mv -f .deps/mysqlmanager-guardian.Tpo .deps/mysqlmanager-guardian.Po
g++ -DMYSQL_INSTANCE_MANAGER -DMYSQL_SERVER -I. -I../../include -I../../include -I../../include    -O3    -fno-implicit-templates -fno-exceptions -fno-rtti -MT mysqlmanager-parse_output.o -MD -MP -MF .deps/mysqlmanager-parse_output.Tpo -c -o mysqlmanager-parse_output.o `test -f 'parse_output.cc' || echo './'`parse_output.cc
mv -f .deps/mysqlmanager-parse_output.Tpo .deps/mysqlmanager-parse_output.Po
g++ -DMYSQL_INSTANCE_MANAGER -DMYSQL_SERVER -I. -I../../include -I../../include -I../../include    -O3    -fno-implicit-templates -fno-exceptions -fno-rtti -MT mysqlmanager-user_management_commands.o -MD -MP -MF .deps/mysqlmanager-user_management_commands.Tpo -c -o mysqlmanager-user_management_commands.o `test -f 'user_management_commands.cc' || echo './'`user_management_commands.cc
mv -f .deps/mysqlmanager-user_management_commands.Tpo .deps/mysqlmanager-user_management_commands.Po
g++ -DMYSQL_INSTANCE_MANAGER -DMYSQL_SERVER -I. -I../../include -I../../include -I../../include    -O3    -fno-implicit-templates -fno-exceptions -fno-rtti -MT mysqlmanager-angel.o -MD -MP -MF .deps/mysqlmanager-angel.Tpo -c -o mysqlmanager-angel.o `test -f 'angel.cc' || echo './'`angel.cc
mv -f .deps/mysqlmanager-angel.Tpo .deps/mysqlmanager-angel.Po
/bin/sh ../../libtool --preserve-dup-deps --tag=CXX   --mode=link g++  -O3    -fno-implicit-templates -fno-exceptions -fno-rtti  -rdynamic  -o mysqlmanager mysqlmanager-command.o mysqlmanager-mysqlmanager.o mysqlmanager-manager.o mysqlmanager-log.o mysqlmanager-thread_registry.o mysqlmanager-listener.o mysqlmanager-protocol.o mysqlmanager-mysql_connection.o mysqlmanager-user_map.o mysqlmanager-messages.o mysqlmanager-commands.o mysqlmanager-instance.o mysqlmanager-instance_map.o mysqlmanager-instance_options.o mysqlmanager-buffer.o mysqlmanager-parse.o mysqlmanager-guardian.o mysqlmanager-parse_output.o mysqlmanager-user_management_commands.o mysqlmanager-angel.o liboptions.la libnet.a ../../vio/libvio.a ../../mysys/libmysys.a ../../strings/libmystrings.a ../../dbug/libdbug.a -lz -lpthread -lcrypt -lnsl -lm  -lpthread
g++ -O3 -fno-implicit-templates -fno-exceptions -fno-rtti -rdynamic -o mysqlmanager mysqlmanager-command.o mysqlmanager-mysqlmanager.o mysqlmanager-manager.o mysqlmanager-log.o mysqlmanager-thread_registry.o mysqlmanager-listener.o mysqlmanager-protocol.o mysqlmanager-mysql_connection.o mysqlmanager-user_map.o mysqlmanager-messages.o mysqlmanager-commands.o mysqlmanager-instance.o mysqlmanager-instance_map.o mysqlmanager-instance_options.o mysqlmanager-buffer.o mysqlmanager-parse.o mysqlmanager-guardian.o mysqlmanager-parse_output.o mysqlmanager-user_management_commands.o mysqlmanager-angel.o  ./.libs/liboptions.a -lpthread -lpthread -lpthread -lpthread libnet.a ../../vio/libvio.a ../../mysys/libmysys.a ../../strings/libmystrings.a ../../dbug/libdbug.a -lz -lpthread -lcrypt -lnsl -lm -lpthread
make[2]: Leaving directory `/usr/src/mysql-5.1.31/server-tools/instance-manager'
make[1]: Leaving directory `/usr/src/mysql-5.1.31/server-tools'
Making all in win
make[1]: Entering directory `/usr/src/mysql-5.1.31/win'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/usr/src/mysql-5.1.31/win'
linux:/usr/src/mysql-5.1.31#

make test 提示
        2/5 skipped: various reasons
mysys/my_atomic-t...ok
mysys/bitmap-t......ok
mysys/base64-t......ok
All tests successful, 2 subtests skipped.
Files=4, Tests=3032,  6 wallclock secs ( 3.94 cusr +  0.15 csys =  4.09 CPU)
make[1]: Leaving directory `/usr/src/mysql-5.1.31/unittest'
cd mysql-test ; \
            /usr/bin/perl ./mysql-test-run.pl   --mysqld=--binlog-format=mixed
Logging: ./mysql-test-run.pl --mysqld=--binlog-format=mixed
090228  1:10:14 [ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!

090228  1:10:14 [ERROR] Aborting

mysql-test-run: *** ERROR: Could not find version of MySQL
make: *** [test-ns] Error 1
回复 支持 反对

使用道具 举报

发表于 2009-2-28 14:30:54 | 显示全部楼层
make test 通不過可能還有其他原因,但現在不肯定你是過不去還是已編譯完成,需時多久?跟你在 CentOS 下需時差不多嗎?

/usr/local/bin 下可有 mysql 新裝的命令否?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-28 15:11:47 | 显示全部楼层
Post by d00m3d;1954028
make test 通不過可能還有其他原因,但現在不肯定你是過不去還是已編譯完成,需時多久?跟你在 CentOS 下需時差不多嗎?

/usr/local/bin 下可有 mysql 新裝的命令否?

时间是差不多的,感觉就是同一个错误centos5.2用的是gcc4.1的编译器
/usr/local/bin没有mysql的命令不过要是make install后,也出错,但mysql到是装上了,基本命令也都有,但编译没完全通过,心里没底!各位,一个关键问题,我好像编译什么都make过不去,从编译时间来看,应该是快完成那段,不知什么错误,退出目录,然后终止了。
回复 支持 反对

使用道具 举报

发表于 2009-2-28 15:14:41 | 显示全部楼层
這樣吧,先找一找 mysqld 在哪裡

find / -iname 'mysql*'
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-28 15:19:04 | 显示全部楼层
/usr/local/lib/mysql/                     (有个plugin空目录)
/usr/local/include/mysql           (空目录)

我没有make install,只是make test
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-28 16:51:15 | 显示全部楼层
我自己都怀疑,我是不是编译过了,但make test 出错是什么意思
回复 支持 反对

使用道具 举报

发表于 2009-2-28 21:44:32 | 显示全部楼层
这几天真是累倒了,还没留意到你未 make install

make test 出错有很多原因可做成,但并不一定是编译不成功,试 make install 後再用 find 检查一次看看

这里是 BLFS 手册关於 MySQL 的章节给你參考一下

http://www.linuxfromscratch.org/blfs/view/svn/server/mysql.html
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表