[MXS-113] MaxScale seems to fail if built against MariaDB 10.0 libraries Created: 2015-04-23 Updated: 2015-06-03 Resolved: 2015-06-03 |
|
| Status: | Closed |
| Project: | MariaDB MaxScale |
| Component/s: | Documentation |
| Affects Version/s: | None |
| Fix Version/s: | 1.2.0 |
| Type: | Bug | Priority: | Minor |
| Reporter: | Simon J Mudd | Assignee: | markus makela |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Description |
|
I was looking at how to build this to do some testing and notice that building with MariaDB-5.5 rpms (on CentOS 6) the build fails if I use the MariaDB-10.0 rpms. Trying with MariaDB-5.5 rpms seems to allow the build to complete. The build failure gives me: ... when the installed MariaDB rpms are: $ rpm -qa | grep MariaDB Whereas doing it with these rpms works fine: ... Note: I'd built by creating a build directory under git/MaxScale and doing So not sure the exact cause or if perhaps I'm doing something wrong. I see that MaxScale/Documentation/Getting-Started/Building-MaxScale-from-Source-Code.md |
| Comments |
| Comment by markus makela [ 2015-04-24 ] | |||||||||||||||||
|
If you could give us more information about your system I believe we can solve this issue. What we need is Linux Distribution, MariaDB library installation method and library version, the standard c++ library version. Those undefined references seem to be from the libstdc++ . This makes me think that the installed c++ library is either too old or somehow a non-standard version. | |||||||||||||||||
| Comment by Simon J Mudd [ 2015-04-27 ] | |||||||||||||||||
|
Hi Markus. So I should be able to build against MariaDB 10 libraries? If so please make that explicit in the documentation. I did say which OS I was using but I can be a bit more specific.
And the C compiler is the OS default (so a tiny bit old):
Do you need to know anything else? | |||||||||||||||||
| Comment by markus makela [ 2015-04-27 ] | |||||||||||||||||
|
I followed the "Building Form Source" document and while it worked with 5.5 it did fail with 10.0. This leads me to believe there is a missing dependency for CentOS 6 when using MariaDB 10.0 server. For example on Fedora 20, which has a more recent GCC version, the build works fine. Based on this I would say that using MariaDB 10.0 requires GCC 4.8 or newer since Fedora upgraded to it in Fedora 19. I will confirm which version is the minimum required for MariaDB 10.0. | |||||||||||||||||
| Comment by Simon J Mudd [ 2015-04-27 ] | |||||||||||||||||
|
Well your MariaDB rpms which I'm using in production on CentOS 6 work fine. I assume you build these rpms using a "clean" setup, as otherwise people who might want to build original or patched MariaDB rpms from the .src.rpm would not be able to do this. Again thanks for checking this and clarifying what may be missing. Also note: I'm aware that WebScaleSQL does require a newer compiler toolset. This is specified in their documentation and when I've built some of their rpms on CentOS 6 I did have to install devtoolset-1.1 (GCC 4.7) or devtoolset-2 (GCC 4.8) for the build to work. See: https://github.com/sjmudd/webscalesql-rpm for reference. I know that MariaDB has pulled in various WebScaleSQL patches and hope that they haven't inadvertently pulled in compiler dependencies without making this clear, as that may "bleed through" to the MaxScale dependencies. | |||||||||||||||||
| Comment by markus makela [ 2015-05-10 ] | |||||||||||||||||
|
I found this link on the GCC Bugzilla: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43882 Based on those comments I would believe the symbols were introduced in GCC 4.5.0 thus it is the minimum required version if MaxScale is built with MariaDB 10 from source. | |||||||||||||||||
| Comment by Dipti Joshi (Inactive) [ 2015-06-02 ] | |||||||||||||||||
|
markus makela Can we clarify this in our how to build from source code guide ? | |||||||||||||||||
| Comment by markus makela [ 2015-06-03 ] | |||||||||||||||||
|
The source building guide now mentions the MariaDB 10.0 dependency on GCC version 4.7 or newer: https://github.com/mariadb-corporation/MaxScale/blob/develop/Documentation/Getting-Started/Building-MaxScale-from-Source-Code.md |