mysql4.0错误_编译mysql4.0时候出现错误提示checking "LinuxThreads"... "Not found"

解压mysql4.0.26

root@www:/db# tar zxvf mysql-4.0.26.tar.gz

备份mysql5的数据目录

root@www:/db# tar czvf mysql5.data.tar.gz mysql5

编译

root@www:/db# cd mysql-4.0.26

root@www:/db/mysql-4.0.26# ./configure --prefix=/db/mysql4

最后提示:

checking "LinuxThreads"... "Not found"

configure: error: This is a linux system and Linuxthreads was not

found. On linux Linuxthreads should be used. Please install Linuxthreads

(or a new glibc) and try again. See the Installation chapter in the

Reference Manual for more information.

怎么会没有Linuxthreads?查看

root@www:/db/mysql-4.0.26# gcc -v

Using built-in specs.

Target: i486-linux-gnu

Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --

with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1

--enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-checking=release i486-linux-gnu

Thread model: posix

gcc version 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)

也许是gcc版本太新的原因?上网一查,是因为新内核使用了NTPL这种先进的线程处理方式,于是就这样:

root@www:/db/mysql-4.0.26# cp /usr/include/pthread.h /usr/include/pthread.h.bak

root@www:/db/mysql-4.0.26# echo '/* Linuxthreads */' >> /usr/include/pthread.h

然后编译,并且加了点参数

root@www:/db/mysql-4.0.26# ./configure --prefix=/db/mysql4 --with-unix-socket-path=/db/mysql4/mysql.sock --with-tcp-port=3304

--with-low-memory

在检测Linuxthreads地方显示为Found,但后来还是停下了,

checking whether signal handlers are of type void... yes

checking for tgetent in -lncurses... no

checking for tgetent in -lcurses... no

checking for tgetent in -ltermcap... no

checking for termcap functions library... configure: error: No curses/termcap li

brary found

看来要装

ncurses-devel

你可能感兴趣的:(mysql4.0错误)