Summary: | MySql broken after portage2.0 update ?! | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Voicu Liviu <liviu.voicu> |
Component: | [OLD] Development | Assignee: | Sascha Schwabbauer (RETIRED) <cybersystem> |
Status: | RESOLVED FIXED | ||
Severity: | blocker | CC: | ab0781, gentoo, k, mholzer, pau, rphillips, stephen, vapier, webmaster, ykoehler |
Priority: | High | ||
Version: | 1.2 | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 4413 |
do you have berkdb in your USE var in /etc/make.conf ? > ------- Additional Comment #1 From SpanKY 2002-06-18 19:29 -------
>
>do you have berkdb in your USE var in /etc/make.conf ?
NOT AT ALL...I SOVED THE PROBLEM BY EMERGING "DB" AGAIN BUT:
IF YOU RUN : 'EMERGE DB' IT DOES NOT WORK, YOU NEED TO PROVIDE THE FULL
PATH!!!
LIKE: 'EMERGE SYS-WATEVA/DB' ( ANOTHER BUG IN PORTAGE2 ONLY )
THANKS
I had the same problem with berkdb and mysql. I re-emerged sys-libs/db, but mysql still won't compile with USE="berkdb" Referencing http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF8&selm=97e5gq%2415rq%241%40FreeBSD.csie.NCTU.edu.tw and http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF8&selm=98fddh%241q77%241%40FreeBSD.csie.NCTU.edu.tw which I will summarize as: !!! use the included bdb, it's specially patched for mysql !!! checking for BerkeleyDB... supplied Compiling Berekeley DB in './bdb' checking for Innodb... Not using Innodb checking for Gemini DB... Not using Gemini DB CONFIGURING FOR BERKELEY DB The following diff works for me. Not sure what that gcc gobbedly-gook is in there for, but, like I said, it works for me. Please give this a go! Index: mysql-3.23.49-r2.ebuild =================================================================== RCS file: /home/cvsroot/gentoo-x86/dev-db/mysql/mysql-3.23.49-r2.ebuild,v retrieving revision 1.1 diff -u -r1.1 mysql-3.23.49-r2.ebuild --- mysql-3.23.49-r2.ebuild 2002/06/16 16:39:18 1.1 +++ mysql-3.23.49-r2.ebuild 2002/07/03 00:17:04 @@ -59,14 +59,11 @@ local myconf # means use the system readline use readline && myconf="${myconf} --without-readline" - if [[ "${COMPILER}" != "gcc3" ]]; then - echo "jsqkdk" - use berkdb && myconf="${myconf} --with-berkeley-db --with-berkeley-db-includes=/usr/include/db3 --with-berkeley-db-libs=/usr/lib" + if use berkdb; then + myconf="${myconf} --with-berkeley-db=./bdb" else - echo "bleh" - use berkdb && myconf="${myconf} --with-berkeley-db" + myconf="${myconf} --without-berkeley-db" fi - use berkdb || myconf="${myconf} --without-berkeley-db" use static && myconf="${myconf} --with-mysqld-ldflags=-all-static --disable-shared" use static || myconf="${myconf} --enable-shared --enable-static" use tcpd && myconf="${myconf} --with-libwrap" cvs server: Diffing files *** Bug 4524 has been marked as a duplicate of this bug. *** The patch posted here is for a slightly older version of MySQL. I am not concerned about this because I want to be bleeding-edge, I am concerned that there may have been security updates in the latest one. Does anyone have a patch for the latest, unmasked one? well, just edit dev-db/mysql/mysql-3.23.51.ebuild by hand ... replace '--with-berkeley-db' with '--with-berkeley-db=./bdb' *** Bug 4574 has been marked as a duplicate of this bug. *** *** Bug 4432 has been marked as a duplicate of this bug. *** A possible workaround could be unmerging db-3.2.9 (which was the latest version installed) and merging db-3.2.3h-r4 so that mysql compiles. I dont know what this downgrade of db breaks but mysql, at least, works. What about fixing and update the ebuild to ver 3.2.9a? Makes sense to me. I checked the Berkley homepage and there isn't really any 3.2.9a release, but 2 small patches which this probably are about. So what about patch and name it 3.2.9a and put in portage? I'm all new to Gentoo and not yet reached the level of building packages or I would do it. No, I have no time space for the learning curve right now :-) Downgrading to db-3.2.3h-r4 can be problematic. It'll overwrite db-3.2.9, which breaks any application that may have been compiled against it (e.g. postfix). Also, an 'emerge -u world' will reinstall db-3.2.9, which will then break MySQL again. I'd recommend installing the MySQL-specific version in a seperate directory, and passing the directory to the MySQL ebuild. I like the idea of putting a 3.2.9a version in. I don't like the idea of downgrading (except when "bleeding-edge" means "admin gets castrated", as with most Windows upgrades) but there really should only be one BerkDB. I'm a shared-library purist, and besides, it could get complicated having a customized MySQL ebuild to make it use its own DB. For example, what happens when you do an "emerge -u world" when MySQL has been updated? Hopefully some kindhearted developer has fixed the problem for us, but otherwise, it's the same thing all over again. Besides, can't a specially-patched DB (made for MySQL) be usable by everything else? Or, what about making MySQL work with the normal DB? Either way, it's a fragmentation issue that is probably still solvable. The newest ebuild mysql-3.23.51-r2.ebuild works for me fine. * myconf is --with-berkeley-db=./bdb --with-readline --enable-shared --enable- static --with-libwrap --without-innodb --without-debug That has changed during configure (i've found, maybe something more) World update portage-20020707.tar.bz2 jnelson tells me that this issue has been resolved for quite a while, closing bug... |
This morning started with mysql update as following(after getting the portage 2.0): rothsupport voicu # emerge -p -u world These are the packages that I would merge, in order. Calculating world dependencies ...done! [ebuild U ] dev-db/mysql-3.23.49-r2 to / Ok...sems to an update there so i tried to update my current: rothsupport voicu # emerge -u world Calculating world dependencies ...done! >>> emerge dev-db/mysql-3.23.49-r2 to / ... ... ... checking for BerkeleyDB... supplied configure: error: didn't find valid BerkeleyDB: invalid version 3.2.9 (must be version 3.2.3h or 3.2.9a) !!! ERROR: The ebuild did not complete successfully. !!! Function src_compile, Line 105, Exitcode 1 !!! bad ./configure !!! emerge aborting on /usr/portage/dev-db/mysql/mysql-3.23.49-r2.ebuild . Nice huh? Anyone knows what is going on? I don't have BerkeleyDB in my mashine...and I don't want too. Many thanks