Connector C++ Binary Builds
Contents |
[edit] Connector/C++ binary builds
Below you can find information how we have build MySQL Connector/C++ binaries available for download.
[edit] Why do I need to know?
The MySQL driver for C++ is written in C++. C++ binaries may not be as portable as C binaries. Different compiler versions, different Standard Template Libraries or other runtime dependencies may cause incompatibilities. Small version and setup differences may cause crashes, leaks or linking problems.
If you are building a C++ client application with Connector/C++ on a build system that differs from our build environment you may experience binary incompatibilities. Those incompatibilities are often beyond our control.
In such cases you may have to build the MySQL Connector/C++ from source to get compatible binaries for your system.
[edit] Where else can I find the build details?
Every binary download contains a README file. At its end you can find the very same information as shown below,
[edit] Windows binaries
[edit] MySQL Connector/C++ 1.0.5 GA
Valid for: 1.0.5 GA
We offer distinct binaries for Visual Studio 2005 and Visual Studio 2008. Visual Studio 2008 is the new default. For backwards compatibility we offer Visual Studio 2005 builds as well. The Visual Studio 2005 builds are only available as "Without installer (unzip in C:\)" zip-packages.
All builds are made using RelWithDebInfo configuration. Your client application should use the same (Release) configuration.
If you want to use any other configuration, for example Debug, you must compile the MySQL driver for C++ from source and use the resulting binaries.
Binary incompatibilities can also occur if you are using a different C Run-Time Libraries (CRT) than we used for building:
- Visual Studio 2008 builds use Microsoft.VC90.CRT (9.0.21022.8)
- Visual Studio 2005 builds use Microsoft.VC80.CRT (8.0.50727.762)
You can check those details on your own by inspecting the manifest embedded into the mysqlcppconn.dll. Use the manifest tool (mt.exe) for inspection.
[edit] MySQL Connector/C++ 1.0.4 beta
Valid for: 1.0.4 beta
Windows binaries are build with Visual Studio 2005. We are delivering RelWithDebInfo configurations. Your client application should use the same (Release) configuration.
If you want to use any other configuration, for example Debug, you must compile the MySQL driver for C++ from source and use the resulting binaries.
Binary incompatibilities can also occur if you are using a different C Run-Time Libraries (CRT) than we used for building. The MySQL Connector/C++ binaries are build using Microsoft.VC80.CRT version 8.0.50727.762
[edit] What are the most common issues?
[edit] Mixing Debug and Release
You must not mix Debug and Release settings when compiling a client application. Do not compile a client in Debug mode against a Release version of the MySQL Connector/C++ library.
The Windows binaries we are shipping use RelWithDebInfo. For all other platforms we are offering Release binaries only.
Solutions
- Do not mix configurations
- Build the MySQL Connector/C++ from source and use the resulting binaries
[edit] 1.0.5 GA: You get a crash when using Visual Studio 2008
Valid for: 1.0.5 GA
This should not happen.
Please make sure that you are using the dedicated Visual Studio 2008 builds.
Please make sure that your application does not use two different versions of the C Run-Time Libraries (CRT) in one binary.
Possible solution
- Build the MySQL Connector/C++ from source and use the resulting binaries. This may cure the situation of two different CRTs used by one client application.
[edit] 1.0.4 beta: You get a crash when using Visual Studio 2008
Valid for: 1.0.4 beta
Unfortunately there seem to be incompatibilities when using our Windows binaries, which are build with Visual Studio 2005, together with client applications that are build using Visual Studio 2008.
To our knowledge not all driver methods are affected. Some work fine, others do not. We are searching for the exact reason. It may be related to different C Run-Time Libraries (CRT). Our Windows binaries are made using Microsoft.VC80.CRT version 8.0.50727.762.
We consider to provide dedicated Visual Studio 2008 builds soon.
Solution:
- Build the MySQL Connector/C++ from source and use the resulting binaries
[edit] Linux: GCC 4.x
Valid for: all versions
Our generic Linux binaries are build using GCC 3.x, see below for details. Mixing GCC 3.x and GCC 4.x binaries can result in unexpected behaviors including crashes, build errors and leaks.
Solution:
- Build the MySQL Connector/C++ from source and use the resulting binaries
[edit] Platforms and Settings
NOTE The table may contain platforms on which we test and build the driver but for which we do not publish the binaries.
| Platform | ||||
|---|---|---|---|---|
| C compiler | C++ compiler | CMake | MySQL | Settings |
| Windows | ||||
| See above! | ||||
| Windows x64 | ||||
| See above! | ||||
| Linux (x86) | ||||
| gcc (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-59) | g++ (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-59) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| Linux (AMD64 / Intel EM64T) | ||||
| gcc (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-59) | g++ (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-59) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g -m64 LDFLAGS = -L/usr/X11R6/lib64 -static-libgcc PICOPT = -fPIC |
| Linux (IA64) | ||||
| gcc (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-59) | g++ (GCC) 3.2.3 20030502 (Red Hat Linux 3.2.3-59) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| Red Hat Enterprise Linux 5 (x86) | ||||
| gcc (GCC) 4.1.2 20071124 (Red Hat 4.1.2-42) | g++ (GCC) 4.1.2 20071124 (Red Hat 4.1.2-42) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| Red Hat Enterprise Linux 5 (AMD64 / Intel EM64T) | ||||
| gcc (GCC) 4.1.2 20071124 (Red Hat 4.1.2-42) | g++ (GCC) 4.1.2 20071124 (Red Hat 4.1.2-42) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g -m64 LDFLAGS = -L/usr/X11R6/lib64 -static-libgcc PICOPT = -fPIC |
| Red Hat Enterprise Linux 5 (IA64) | ||||
| gcc (GCC) 4.1.2 20070626 (Red Hat 4.1.2-14) | g++ (GCC) 4.1.2 20070626 (Red Hat 4.1.2-14) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| Red Hat Enterprise Linux 4 (x86) | ||||
| gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-9) | g++ (GCC) 3.4.6 20060404 (Red Hat 3.4.6-9) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| Red Hat Enterprise Linux 4 (AMD64 / Intel EM64T) | ||||
| gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-9) | g++ (GCC) 3.4.6 20060404 (Red Hat 3.4.6-9) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g -m64 LDFLAGS = -L/usr/X11R6/lib64 -static-libgcc PICOPT = -fPIC |
| Red Hat Enterprise Linux 4 (IA64) | ||||
| gcc (GCC) 3.4.4 20050721 (Red Hat 3.4.4-2) | g++ (GCC) 3.4.4 20050721 (Red Hat 3.4.4-2) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| SuSE Linux Enterprise Server 10 (x86) | ||||
| gcc (GCC) 4.1.2 20070115 (prerelease) (SUSE Linux) | g++ (GCC) 4.1.2 20070115 (prerelease) (SUSE Linux) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| SuSE Linux Enterprise Server 10 (AMD64 / Intel EM64T) | ||||
| gcc (GCC) 4.1.2 20070115 (prerelease) (SUSE Linux) | g++ (GCC) 4.1.2 20070115 (prerelease) (SUSE Linux) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g -m64 LDFLAGS = -L/usr/X11R6/lib64 -static-libgcc PICOPT = -fPIC |
| SuSE Linux Enterprise Server 10 (IA64) | ||||
| gcc (GCC) 4.1.0 (SUSE Linux) | g++ (GCC) 4.1.0 (SUSE Linux) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g |
| SuSE Linux Enterprise Server 9 (x86) | ||||
| gcc (GCC) 3.3.3 (SuSE Linux) | g++ (GCC) 3.3.3 (SuSE Linux) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| SuSE Linux Enterprise Server 9 (AMD64 / Intel EM64T) | ||||
| gcc (GCC) 3.3.3 (SuSE Linux) | g++ (GCC) 3.3.3 (SuSE Linux) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g -m64 LDFLAGS = -L/usr/X11R6/lib64 -static-libgcc PICOPT = -fPIC |
| SuSE Linux Enterprise Server 9 (IA64) | ||||
| gcc (GCC) 3.3.3 (SuSE Linux) | g++ (GCC) 3.3.3 (SuSE Linux) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g LDFLAGS = -static-libgcc PICOPT = -fPIC |
| Solaris 10 (SPARC, 64-bit) | ||||
| Sun C 5.9 SunOS_sparc Patch 124867-09 2008/11/25 | Sun C++ 5.9 SunOS_sparc Patch 124863-11 2009/03/10 | 2.6.2 | 5.1.31 |
CC = cc-5.0 CXXFLAGS = -xO2 -xtarget=generic -m64 -mt LDFLAGS = -m64 PICOPT = -KPIC |
| Solaris 10 (SPARC, 32-bit) | ||||
| Sun C 5.9 SunOS_sparc Patch 124867-09 2008/11/25 | Sun C++ 5.9 SunOS_sparc Patch 124863-11 2009/03/10 | 2.6.2 | 5.1.31 |
CC = cc-5.0 CXXFLAGS = -xO2 -xtarget=generic -m32 -mt PICOPT = -KPIC |
| Solaris 10 (x86, 32-bit) | ||||
| Sun C 5.9 SunOS_i386 Patch 124868-08 2008/11/25 | Sun C++ 5.9 SunOS_i386 Patch 124864-11 2009/03/10 | 2.6.2 | 5.1.31 |
CC = cc CXXFLAGS = -xO2 -xtarget=generic -m32 -mt PICOPT = -KPIC |
| Solaris 10 (AMD64 / Intel EM64T, 64-bit) | ||||
| Sun C 5.9 SunOS_i386 Patch 124868-08 2008/11/25 | Sun C++ 5.9 SunOS_i386 Patch 124864-11 2009/03/10 | 2.6.2 | 5.1.31 |
CC = cc CXXFLAGS = -xO2 -xtarget=generic -m64 -mt LDFLAGS = -m64 PICOPT = -KPIC |
| Solaris 9 (SPARC, 64-bit) | ||||
| Sun C 5.9 SunOS_sparc Patch 124867-09 2008/11/25 | Sun C++ 5.9 SunOS_sparc Patch 124863-11 2009/03/10 | 2.6.2 | 5.1.31 |
CC = cc-5.0 CXXFLAGS = -xO2 -xtarget=generic -m64 -mt LDFLAGS = -m64 PICOPT = -KPIC |
| Solaris 9 (SPARC, 32-bit) | ||||
| Sun C 5.9 SunOS_sparc Patch 124867-09 2008/11/25 | Sun C++ 5.9 SunOS_sparc Patch 124863-11 2009/03/10 | 2.6.2 | 5.1.31 |
CC = cc-5.0 CXXFLAGS = -xO2 -xtarget=generic -m32 -mt PICOPT = -KPIC |
| Solaris 9 (x86, 32-bit) | ||||
| Sun C 5.9 SunOS_i386 Patch 124868-08 2008/11/25 | Sun C++ 5.9 SunOS_i386 Patch 124864-11 2009/03/10 | 2.6.2 | 5.1.31 |
CC = cc CXXFLAGS = -xO2 -xtarget=generic -m32 -mt PICOPT = -KPIC |
| Solaris 8 (SPARC, 64-bit) | ||||
| Sun C 5.8 Patch 121015-04 2007/01/10 | Sun C++ 5.8 Patch 121017-10 2007/02/21 | 2.6.2 | 5.1.31 |
CC = cc-5.0 CXXFLAGS = -xO2 -g -xtarget=generic64 -mt LDFLAGS = -xtarget=generic64 PICOPT = -KPIC |
| Solaris 8 (SPARC, 32-bit) | ||||
| Sun C 5.8 Patch 121015-04 2007/01/10 | Sun C++ 5.8 Patch 121017-10 2007/02/21 | 2.6.2 | 5.1.31 |
CC = cc-5.0 CXXFLAGS = -xO2 -g -xtarget=generic -mt PICOPT = -KPIC |
| Solaris 8 (x86, 32-bit) | ||||
| Sun C 5.8 Patch 121016-05 2007/01/10 | Sun C++ 5.8 Patch 121018-10 2007/02/21 | 2.6.2 | 5.1.31 |
CC = cc CXXFLAGS = -xO1 -g -xtarget=generic -mt PICOPT = -KPIC |
| FreeBSD 7.x (x86) | ||||
| gcc (GCC) 4.2.1 20070719 [FreeBSD] | g++ (GCC) 4.2.1 20070719 [FreeBSD] | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g |
| FreeBSD 7.x (x86_64) | ||||
| gcc (GCC) 4.2.1 20070719 [FreeBSD] | g++ (GCC) 4.2.1 20070719 [FreeBSD] | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g PICOPT = -fPIC |
| FreeBSD 6.x (x86) | ||||
| gcc (GCC) 3.4.6 [FreeBSD] 20060305 | g++ (GCC) 3.4.6 [FreeBSD] 20060305 | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g |
| FreeBSD 6.x (x86_64) | ||||
| gcc (GCC) 3.4.6 [FreeBSD] 20060305 | g++ (GCC) 3.4.6 [FreeBSD] 20060305 | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O1 -g PICOPT = -fPIC |
| Mac OS X 10.5 (x86) | ||||
| i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5490) | i686-apple-darwin9-g++-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5490) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O2 -g -arch i386 -fno-common -felide-constructors LDFLAGS = -arch i386 -Wl,-search_paths_first |
| Mac OS X 10.5 (x86_64) | ||||
| Mac OS X 10.4 (x86) | ||||
| i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5247) | i686-apple-darwin8-g++-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5247) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O2 -g -fno-common -felide-constructors LDFLAGS = -Wl,-search_paths_first |
| Mac OS X 10.4 (PowerPC, 32-bit) | ||||
| powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5370) | powerpc-apple-darwin8-g++-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5370) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O2 -g -fno-common -felide-constructors LDFLAGS = -Wl,-search_paths_first |
| Mac OS X 10.4 (PowerPC, 64-bit) | ||||
| powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5370) | powerpc-apple-darwin8-g++-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5370) | 2.6.2 | 5.1.31 |
CC = gcc CXXFLAGS = -O2 -g -arch ppc64 -fno-common -felide-constructors LDFLAGS = -arch ppc64 -Wl,-search_paths_first |
| HP-UX 11.23 (IA64, 64-bit) | ||||
| HP aC++/ANSI C B3910B A.06.01 [Jan 05 2005] | aCC: HP aC++/ANSI C B3910B A.06.01 [Jan 05 2005] | 2.6.2 | 5.1.31 |
CC = cc CXXFLAGS = "$CXXFLAGS -AA" LDFLAGS = +DD64 PICOPT = +Z |
| HP-UX 11.11 (PA-RISC 1.1, 32-bit only) | ||||
| cpp.ansi: HP92453-01 B.11.11.14 HP C Preprocessor (ANSI) | aCC: HP ANSI C++ B3910B A.03.65 | 2.6.2 | 5.1.31 |
CC = cc CXXFLAGS = +O2 -g +DAportable -mt -Aa -AA PICOPT = +Z |
| HP-UX 11.11 (PA-RISC 2.0, 64-bit only) | ||||
| cpp.ansi: HP92453-01 B.11.11.14 HP C Preprocessor (ANSI) | aCC: HP ANSI C++ B3910B A.03.65 | 2.6.2 | 5.1.31 |
CC = cc CXXFLAGS = +O2 +DD64 -mt -Aa -AA LDFLAGS = +DD64 PICOPT = +Z |
| AIX 5.3 (POWER, 64-bit) | ||||
| vac.C 6.0.0.17 C F C for AIX Compiler | vacpp.cmp.core 6.0.0.18 C F VisualAge C++ Compiler | 2.6.2 | 5.1.31 |
CC = xlc_r CXXFLAGS = -O2 -g -ma -qstrict -qoptimize=2 -qmaxmem=8192 -q64 LDFLAGS = -Wl,-brtl -Wl,-bnoipath -q64 |
| AIX 5.3 (POWER, 32-bit) | ||||
| vac.C 6.0.0.17 C F C for AIX Compiler | vacpp.cmp.core 6.0.0.18 C F VisualAge C++ Compiler | 2.6.2 | 5.1.31 |
CC = xlc_r CXXFLAGS = -O2 -g -ma -qstrict -qoptimize=2 -qmaxmem=8192 LDFLAGS = -Wl,-brtl -Wl,-bnoipath |
| AIX 5.2 (POWER, 64-bit) | ||||
| vac.C 6.0.0.12 C F C for AIX Compiler | vacpp.cmp.core 6.0.0.13 C F VisualAge C++ Compiler | 2.6.2 | 5.1.31 |
CC = xlc_r CXXFLAGS = -O2 -g -ma -qstrict -qoptimize=2 -qmaxmem=8192 -q64 LDFLAGS = -Wl,-brtl -Wl,-bnoipath -q64 |
| AIX 5.2 (POWER, 32bit) | ||||
| vac.C 6.0.0.12 C F C for AIX Compiler | vacpp.cmp.core 6.0.0.13 C F VisualAge C++ Compiler | 2.6.2 | 5.1.31 |
CC = xlc_r CXXFLAGS = -O2 -g -ma -qstrict -qoptimize=2 -qmaxmem=8192 LDFLAGS = -Wl,-brtl -Wl,-bnoipath |
| i5/OS (POWER, 32-bit) | ||||
| Unknown | Unknown | 2.6.3 | 5.1.32 |
CC = xlc_r LDFLAGS = -Wl,-brtl -Wl,-bnoipath CXXFLAGS = -O2 -g -ma -qstrict -qoptimize=2 -qmaxmem=8192 |
| i5/OS (POWER, 64-bit) | ||||
| Unknown | Unknown | 2.6.3 | 5.1.32 |
CC = xlc_r LDFLAGS = -Wl,-brtl -Wl,-bnoipath CXXFLAGS = -O2 -g -ma -qstrict -qoptimize=2 -qmaxmem=8192 -q64 |