Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 114609 - Mysql 5.0.16-r3 fails to configure
Summary: Mysql 5.0.16-r3 fails to configure
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux MySQL bugs team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-12-06 03:51 UTC by Simon Detheridge
Modified: 2005-12-08 07:44 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Detheridge 2005-12-06 03:51:32 UTC
mysql-5.0.16-r3 fails to configure on my box. It complains of 'no configre
script found'. Here is the output:

leprechaun root # emerge mysql
Calculating dependencies ...done!
>>> emerge (1 of 1) dev-db/mysql-5.0.16-r3 to /
>>> md5 files   ;-) mysql-4.1.14.ebuild
>>> md5 files   ;-) mysql-4.0.26.ebuild
>>> md5 files   ;-) mysql-5.0.16-r30.ebuild
>>> md5 files   ;-) mysql-5.0.15.ebuild
>>> md5 files   ;-) mysql-4.1.15.ebuild
>>> md5 files   ;-) mysql-3.23.58-r1.ebuild
>>> md5 files   ;-) mysql-4.1.15-r30.ebuild
>>> md5 files   ;-) mysql-5.0.16-r3.ebuild
>>> md5 files   ;-) mysql-4.0.25-r2.ebuild
>>> md5 files   ;-) mysql-4.1.15-r1.ebuild
>>> md5 files   ;-) files/digest-mysql-4.1.15-r30
>>> md5 files   ;-) files/digest-mysql-4.1.15-r1
>>> md5 files   ;-) files/mysql-4.0.15.rc6
>>> md5 files   ;-) files/digest-mysql-3.23.58-r1
>>> md5 files   ;-) files/digest-mysql-4.0.26
>>> md5 files   ;-) files/digest-mysql-4.1.14
>>> md5 files   ;-) files/digest-mysql-4.1.15
>>> md5 files   ;-) files/digest-mysql-5.0.15
>>> md5 files   ;-) files/mysql.init
>>> md5 files   ;-) files/mysql-slot.rc6
>>> md5 files   ;-) files/digest-mysql-5.0.16-r3
>>> md5 files   ;-) files/logrotate.mysql
>>> md5 files   ;-) files/my.cnf
>>> md5 files   ;-) files/mysql-slot.conf.d
>>> md5 files   ;-) files/my.cnf-4.1
>>> md5 files   ;-) files/digest-mysql-5.0.16-r30
>>> md5 files   ;-) files/mysql-4.0.24-r1.rc6
>>> md5 files   ;-) files/mysql-4.0.24-r2.rc6
>>> md5 files   ;-) files/my.cnf-4.0.14-r1
>>> md5 files   ;-) files/my.cnf-4.0.24-r1
>>> md5 files   ;-) files/digest-mysql-4.0.25-r2
>>> md5 src_uri ;-) mysql-5.0.16.tar.gz
>>> md5 src_uri ;-) mysql-extras-20051122.tar.bz2
>>> Unpacking source...
 * Using default DATADIR
 * MySQL DATADIR is /var/lib/mysql
 * Previous datadir found, it's YOUR job to change
 * ownership and have care of it
>>> Unpacking mysql-5.0.16.tar.gz to /var/tmp/portage/mysql-5.0.16-r3/work
>>> Unpacking mysql-extras-20051122.tar.bz2 to /var/tmp/portage/mysql-5.0.16-r3/work
 * using "010_all_slot-my-print-default-r2.patch"
 * >    Move config directory to the gentoo default
 * using "035_x86_asm-pic-fixes-r7.patch"
 * >    remove page relocations
 * >    Most part of the original patch has already been accepted by MysQL,
 * >    here is the remaining.
 * >    _many_ tanks to pageexec@freemail.hu
 * using "080_all_slot_script-r3.patch"
 * >    add slot MySQL support to scripts utilities
 * using "703_all_test-rpl_rotate_logs.patch"
 * >    fix for the test suite
 * Applying various patches (bugfixes/updates) ...
 *   010_all_slot-my-print-default-r2.patch ...                           [ ok ]
 *   035_x86_asm-pic-fixes-r7.patch ...                                   [ ok ]
 *   080_all_slot_script-r3.patch ...                                     [ ok ]
 *   703_all_test-rpl_rotate_logs.patch ...                               [ ok ]
 * Done with patching
cp: cannot stat `ltmain.sh': No such file or directory
/var/tmp/portage/mysql-5.0.16-r3/work/mysql/bdb/dist
/var/tmp/portage/mysql-5.0.16-r3/work/mysql
Creating directories...
mkdir ../test_server
Creating Berkeley DB source tree symbolic links...
        btree/tags -> ../dist/tags
        build_unix/tags -> ../dist/tags
        clib/tags -> ../dist/tags
        common/tags -> ../dist/tags
        cxx/tags -> ../dist/tags
        db/tags -> ../dist/tags
        db185/tags -> ../dist/tags
        db_archive/tags -> ../dist/tags
        db_checkpoint/tags -> ../dist/tags
        db_deadlock/tags -> ../dist/tags
        db_dump/tags -> ../dist/tags
        db_dump185/tags -> ../dist/tags
        db_load/tags -> ../dist/tags
        db_printlog/tags -> ../dist/tags
        db_recover/tags -> ../dist/tags
        db_stat/tags -> ../dist/tags
        db_upgrade/tags -> ../dist/tags
        db_verify/tags -> ../dist/tags
        dbinc/tags -> ../dist/tags
        dbinc_auto/tags -> ../dist/tags
        dbm/tags -> ../dist/tags
        dbreg/tags -> ../dist/tags
        env/tags -> ../dist/tags
        fileops/tags -> ../dist/tags
        hash/tags -> ../dist/tags
        hmac/tags -> ../dist/tags
        hsearch/tags -> ../dist/tags
        libdb_java/tags -> ../dist/tags
        lock/tags -> ../dist/tags
        log/tags -> ../dist/tags
        mp/tags -> ../dist/tags
        mutex/tags -> ../dist/tags
        os/tags -> ../dist/tags
        os_vxworks/tags -> ../dist/tags
        os_win32/tags -> ../dist/tags
        qam/tags -> ../dist/tags
        rep/tags -> ../dist/tags
        rpc_client/tags -> ../dist/tags
        rpc_server/tags -> ../dist/tags
        tcl/tags -> ../dist/tags
        test_server/tags -> ../dist/tags
        txn/tags -> ../dist/tags
        xa/tags -> ../dist/tags
Building ../README
Building aclocal.m4
Running autoheader to build config.hin
Running autoconf to build configure
645957
645827
Building RPC client/server files
Building ../dbinc_auto/db_ext.h
Building ../dbinc_auto/btree_ext.h
Building ../dbinc_auto/dbreg_ext.h
Building ../dbinc_auto/hash_ext.h
Building ../dbinc_auto/log_ext.h
Building ../dbinc_auto/mutex_ext.h
Building ../dbinc_auto/qam_ext.h
Building ../dbinc_auto/txn_ext.h
Building ../dbinc_auto/int_def.in
Building ../build_win32/db.h
Building tags
/var/tmp/portage/mysql-5.0.16-r3/work/mysql
 * disabling unneded extraengine tests
>>> Source unpacked.

!!! ERROR: dev-db/mysql-5.0.16-r3 failed.
!!! Function econf, Line 488, Exitcode 1
!!! no configure script found
!!! If you need support, post the topmost build error, NOT this status message.

Here is my emerge info:

leprechaun root # emerge info
Portage 2.0.51.22-r3 (default-linux/x86/2005.0, gcc-3.3.4,
glibc-2.3.4.20040808-r1, 2.6.9 i686)
=================================================================
System uname: 2.6.9 i686 Intel(R) Pentium(R) 4 CPU 3.20GHz
Gentoo Base System version 1.4.16
dev-lang/python:     2.3.4
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.15.90.0.1.1-r3
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.8.1-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -march=pentium4 -ftracer -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3/share/config /usr/share/config /var/bind /var/qmail/alias
/var/qmail/control /var/vpopmail/domains /var/vpopmail/etc"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -march=pentium4 -ftracer -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo
http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/
ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/
http://gentoo.blueyonder.co.uk http://ftp.easynet.nl/mirror/gentoo/"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://leprechaun.london.symdata.com/gentoo-portage/"
USE="x86 alsa apache2 apm berkdb bitmap-fonts bzip2 bzlib cluster crypt eds
emboss encode expat flash fortran ftp gd gd_external gdbm gif gmp gstreamer
imagemagick imlib innodb ipv6 ithreads java jpeg lcms libg++ libwww mhash mime
ming mmx mng mp3 mysql ncurses nls nptl ogg oggvorbis pam pcre pdflib perl php
png python readline recode samba snmp spell ssei ssl tcpd threads tiff truetype
truetype-fonts type1-fonts udev vorbis vpopmail xml2 xsl zlib userland_GNU
kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Simon Detheridge 2005-12-06 04:43:02 UTC
Here is a fix I just worked out:

change line 253 in mysql-2.0.16-r3.ebuild from:

    for dl in ${!rebuilddirlist[@]}; do

to:

    for dl in "${!rebuilddirlist[@]}"; do

My bash-fu isn't as good as some people's, so maybe there is a better way - but
it works.
Comment 2 Simon Detheridge 2005-12-06 04:47:39 UTC
oops, I spoke to soon. It gets further through the ebuild, but fails during the
configure with:

config.status: creating config.h
config.status: executing depfiles commands
config.status: executing default commands
configure: configuring in innobase
configure: running /bin/sh ./configure --prefix=/usr  '--prefix=/usr'
'--host=i686-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info'
'--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib'
'--build=i686-pc-linux-gnu' '--program-suffix=' '--libexecdir=/usr/sbin'
'--sysconfdir=/etc/mysql' '--localstatedir=/var/lib/mysql'
'--sharedstatedir=/usr/share/mysql' '--libdir=/usr/lib/mysql'
'--includedir=/usr/include/mysql' '--with-low-memory' '--enable-assembler'
'--enable-local-infile' '--with-mysqld-user=mysql'
'--with-client-ldflags=-lstdc++' '--enable-thread-safe-client'
'--with-comment=Gentoo Linux mysql-5.0.16-r3'
'--with-unix-socket-path=/var/run/mysqld/mysqld.sock' '--with-zlib-dir=/usr'
'--with-lib-ccflags=-fPIC' '--without-readline' '--without-docs'
'--enable-shared' '--enable-static' '--without-libwrap' '--with-openssl'
'--without-debug' '--without-ndb-debug' '--with-bench' '--with-server'
'--with-embedded-server' '--with-extra-tools' '--with-innodb' '--with-raid'
'--with-extra-charsets=all' '--with-berkeley-db=./bdb' '--with-geometry'
'--with-ndbcluster' '--without-big-tables' 'CC=gcc' 'CFLAGS=-O3 -march=pentium4
-ftracer -pipe -fomit-frame-pointer -DHAVE_ERRNO_AS_DEFINE=1' 'CXXFLAGS=-O3
-march=pentium4 -ftracer -pipe -fomit-frame-pointer -DHAVE_ERRNO_AS_DEFINE=1
-felide-constructors -fno-exceptions -fno-rtti -fno-implicit-templates'
'CXX=g++' 'build_alias=i686-pc-linux-gnu' 'host_alias=i686-pc-linux-gnu'
CFLAGS='-O3 -DDBUG_OFF -O3 -march=pentium4 -ftracer -pipe -fomit-frame-pointer
-DHAVE_ERRNO_AS_DEFINE=1 ' CXXFLAGS='-O3 -DDBUG_OFF -O3 -march=pentium4 -ftracer
-pipe -fomit-frame-pointer -DHAVE_ERRNO_AS_DEFINE=1 -felide-constructors
-fno-exceptions -fno-rtti -fno-implicit-templates -fno-implicit-templates
-fno-exceptions -fno-rtti' --cache-file=/dev/null --srcdir=.
./configure: ./configure: No such file or directory
configure: error: /bin/sh ./configure failed for innobase

!!! Please attach the config.log to your bug report:
!!! /var/tmp/portage/mysql-5.0.16-r3/work/mysql/config.log

!!! ERROR: dev-db/mysql-5.0.16-r3 failed.
!!! Function econf, Line 485, Exitcode 0
!!! econf failed
!!! If you need support, post the topmost build error, NOT this status message.


PLEASE NOTE: this is upgrading from mysql 4.1.15. The ebuild appears to work on
another machine that already has 5.0.15 installed.
Comment 3 Simon Detheridge 2005-12-06 05:14:21 UTC
*sigh* - OK this time I've fixed it. I did some proper research. Use the patch
below. 

The problem is that the expression ${!rebuilddirlist[@]} does not expand to
anything in bash-2. I didn't have bash-3 on the machine, so it skipped that loop
entirely.

I suggest either making bash-3 a dependency of the ebuild (ouch), or using the
following patch to make it compatible with bash-2:

--- mysql-5.0.16-r3.ebuild      2005-11-25 17:35:30.000000000 +0000
+++ mysql-5.0.16-r3.ebuild.new  2005-12-06 13:10:17.000000000 +0000
@@ -250,9 +250,10 @@
                rebuilddirlist=( '.' 'innobase' )
        fi
 
-       for dl in ${!rebuilddirlist[@]}; do
+       dl=0
+       for dir in ${rebuilddirlist[@]}; do
                einfo "reconfiguring phase $(( ${dl} + 1 )) of
${#rebuilddirlist[@]}"
-               pushd "${rebuilddirlist[${dl}]}"
+               pushd "${dir}"
                for buildstep in \
                        'libtoolize --copy --force' \
                        'aclocal --force' \
@@ -265,6 +266,7 @@
                        ${buildstep} || die "failed ${buildstep/ */}
${rebuilddirlist[${dl}]}"
                done
                popd
+               let dl=dl+1
        done
 
        [[ -w bdb/dist/ltmain.sh ]] && cp ltmain.sh bdb/dist/ltmain.sh
Comment 4 Francesco R. (RETIRED) gentoo-dev 2005-12-07 16:07:20 UTC
Thanks for the report and the patches,
I've verified that the minimum version of bash supported must be 2.05 .
I'll fix it as soon as possible.
Comment 5 Francesco R. (RETIRED) gentoo-dev 2005-12-08 07:44:23 UTC
Ok, it now work for me with $ echo $BASH_VERSION = 2.05b.0(1)-release ,
It's a mistery how could rc script work since they use the same concept but
until it wor I'll not change them ;-)