[Maria-discuss] Generic Linux Build requirements
http://askmonty.org/wiki/index.php/Building_MariaDB:Generic_Linux says: * gcc 2.95.2 or later However, according to [1] , Gentoo claims that GCC 4.3 is required due the use of c++ templates in the server. [2] also states that GCC-4 is absolutely required with a failing build log. [1] http://bugs.gentoo.org/show_bug.cgi?id=307251#c5 [2] http://bugs.gentoo.org/show_bug.cgi?id=284946
On Thu, 11 Mar 2010 13:40:50 -0500, Brian Evans <grknight@scent-team.com> wrote: Brian> http://askmonty.org/wiki/index.php/Building_MariaDB:Generic_Linux Brian> says: Brian> * gcc 2.95.2 or later Brian> Brian> However, according to [1] , Gentoo claims that GCC 4.3 is Brian> required due the use of c++ templates in the server. Brian> [2] also states that GCC-4 is absolutely required with a failing Brian> build log. Brian> Brian> Brian> [1] http://bugs.gentoo.org/show_bug.cgi?id=307251#c5 Brian> [2] http://bugs.gentoo.org/show_bug.cgi?id=284946 Brian> Thanks. I've added a "Gentoo Build Notes" section to the bottom of the page with this information. http://askmonty.org/wiki/index.php/Building_MariaDB:Generic_Linux -- Daniel Bartholomew Monty Program - http://askmonty.org
Hi!
"Daniel" == Daniel Bartholomew <dbart@askmonty.org> writes:
Daniel> On Thu, 11 Mar 2010 13:40:50 -0500, Brian Evans Daniel> <grknight@scent-team.com> wrote: Brian> http://askmonty.org/wiki/index.php/Building_MariaDB:Generic_Linux Brian> says: Brian> * gcc 2.95.2 or later Brian> Brian> However, according to [1] , Gentoo claims that GCC 4.3 is Brian> required due the use of c++ templates in the server. Brian> [2] also states that GCC-4 is absolutely required with a failing Brian> build log. A note here is that MariaDB / MySQL builds fine with gcc 3.4.3 on our OpenSolaris machine. I am sure that c++ templates was supported even for gcc 2.95.2 as we have used c++ templates (for lists) in the code since 1995, way before gcc 3.x. There may be another reason for using gcc 4.3 on Gentoo, but it can't be because of c++ templates. Brian> Brian> [1] http://bugs.gentoo.org/show_bug.cgi?id=307251#c5 This bug report doesn't give any indication of why gcc 4.3 would be required; It's only about marking the packet to require gcc 4.3 for building. Brian> [2] http://bugs.gentoo.org/show_bug.cgi?id=284946 The real bug seams to be: ./include/sync0rw.h:425:2: #error HAVE_ATOMIC_BUILTINS is not defined. Do you use enough new GCC or compatibles? Looks like a bug in the MySQL code. This code has however changed since then, so it may not be an issue anymore. (After all, we do build now with gcc 3.4.3) Daniel> Thanks. I've added a "Gentoo Build Notes" section to the bottom of the Daniel> page with this information. Daniel> http://askmonty.org/wiki/index.php/Building_MariaDB:Generic_Linux Thanks. Regards, Monty
On 4/1/2010 11:00 AM, Michael Widenius wrote:
Brian> [2] http://bugs.gentoo.org/show_bug.cgi?id=284946 The real bug seams to be:
./include/sync0rw.h:425:2: #error HAVE_ATOMIC_BUILTINS is not defined. Do you use enough new GCC or compatibles?
Looks like a bug in the MySQL code. This code has however changed since then, so it may not be an issue anymore. (After all, we do build now with gcc 3.4.3)
Robin Johnson did some more digging and found that MySQL 5.0.8[3-6] needed GCC 4.3 due to mutex locking changes that were changed again in 5.0.87. Gentoo now recognizes gcc 3.4.3 as the minimum requirement.
Daniel> Thanks. I've added a "Gentoo Build Notes" section to the bottom of the Daniel> page with this information.
Daniel> http://askmonty.org/wiki/index.php/Building_MariaDB:Generic_Linux
Daniel, If you can, please remove my overlay from the instructions for building in Gentoo. Instead, users should build from the Gentoo main tree. The correct procedure is now: 1. Synchronize your tree with "emerge --sync" 2. Build MariaDB using "emerge mariadb"
On Tue, 06 Apr 2010 10:16:00 -0400 Brian Evans <grknight@scent-team.com> wrote: Brian> On 4/1/2010 11:00 AM, Michael Widenius wrote: Brian> > Brian> [2] http://bugs.gentoo.org/show_bug.cgi?id=284946 Brian> > The real bug seams to be: Brian> > Brian> > ./include/sync0rw.h:425:2: #error HAVE_ATOMIC_BUILTINS is not Brian> > defined. Do you use enough new GCC or compatibles? Brian> > Brian> > Looks like a bug in the MySQL code. This code has however Brian> > changed since then, so it may not be an issue anymore. Brian> > (After all, we do build now with gcc 3.4.3) Brian> > Brian> Brian> Robin Johnson did some more digging and found that MySQL Brian> 5.0.8[3-6] needed GCC 4.3 due to mutex locking changes that were Brian> changed again in 5.0.87. Brian> Gentoo now recognizes gcc 3.4.3 as the minimum requirement. Ok, good. Thanks! Brian> > Daniel> Thanks. I've added a "Gentoo Build Notes" section to Brian> > Daniel> the bottom of the page with this information. Brian> > Brian> > Daniel> http://askmonty.org/wiki/index.php/Building_MariaDB:Generic_Linux Brian> > Brian> > Brian> Brian> Brian> Daniel, Brian> If you can, please remove my overlay from the instructions for Brian> building in Gentoo. Brian> Instead, users should build from the Gentoo main tree. Brian> Brian> The correct procedure is now: Brian> 1. Synchronize your tree with "emerge --sync" Brian> 2. Build MariaDB using "emerge mariadb" I've updated the Gentoo page: http://askmonty.org/wiki/Building_MariaDB:Gentoo Thanks! -- Daniel Bartholomew Monty Program - http://askmonty.org
participants (3)
-
Brian Evans
-
Daniel Bartholomew
-
Michael Widenius