Recently, I found myself needing MariaDB 5.1.60 for Windows for some testing purposes. Therefore, I needed to build it from source. I ended up using what I’d call a “blend” of the commands listed in this “how-to” and the readme file INSTALL-WIN-SOURCE, so I thought I’d post those steps.
- Download 5.1.60 MariaDB source from here.
-
cd C:\mariadb-5.1
-
win\configure.js
-
cmake .
- VS: File -> Open -> Solution -> MySql.sln
- VS: Build -> Build Solution
- VS: Right-click “PACKAGE” -> Build (in “Solution Explorer” View)
That’s it.
Let’s fire it up:
MariaDB> select version(); +----------------------+ | version() | +----------------------+ | 5.1.60-MariaDB-debug | +----------------------+ MariaDB> show global variables like 'innodb_version'; +----------------+-------------+ | Variable_name | Value | +----------------+-------------+ | innodb_version | 1.0.17-13.0 | +----------------+-------------+ MariaDB> show engines; +------------+---------+---------------------------... | Engine | Support | Comment ... +------------+---------+---------------------------... | CSV | YES | CSV storage engine ... | InnoDB | DEFAULT | Percona-XtraDB, Supports t... | PBXT | YES | High performance, multi-ve... | MARIA | YES | Crash-safe tables with MyI... | MyISAM | YES | Default engine as of MySQL... | FEDERATED | YES | FederatedX pluggable stora... | MRG_MYISAM | YES | Collection of identical My... | MEMORY | YES | Hash based, stored in memo... +------------+---------+---------------------------...
..
For reference, here are my full outputs:
C:\Users\Chris>cd ..\..\mariadb-5.1 C:\mariadb-5.1>win\configure.js C:\mariadb-5.1>cmake . -- Check for working C compiler: cl -- Check for working C compiler: cl -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: cl -- Check for working CXX compiler: cl -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done build CSV as static library (libcsv.lib) build FEDERATEDX as static library (libfederatedx.lib) build HEAP as static library (libheap_s.lib) build MARIA as static library (libmaria_s.lib) build MYISAM as static library (libmyisam_s.lib) build MYISAMMRG as static library (libmyisammrg_s.lib) build PBXT as static library (libpbxt_s.lib) build XTRADB as static library (libxtradb.lib) build ARCHIVE as DLL (ha_archive.dll) build BLACKHOLE as DLL (ha_blackhole.dll) build EXAMPLE as DLL (ha_example.dll) build FEDERATED as DLL (ha_federated.dll) build INNODB_PLUGIN as DLL (ha_innodb_plugin.dll) -- Configuring done -- Generating done -- Build files have been written to: C:/mariadb-5.1
Open Visual Studio -> File -> Open -> Project/Solution -> Select C:\mariadb-5.1.60\MySql.sln
Build Solution Output:
========== Build: 79 succeeded, 0 failed, 2 up-to-date, 2 skipped ==========
Package Build Output:
1>------ Build started: Project: PACKAGE, Configuration: Debug Win32 ------ 1> 1>Performing Post-Build Event... 1>CPack: Create package using NSIS 1>CPack: Install projects 1>CPack: - Install project: MySql 1>CPack: - Install component: Unspecified 1>CPack: - Install component: headers 1>CPack: - Install component: mysqltest 1>CPack: - Install component: runtime 1>CPack: - Install component: scripts 1>CPack: - Install component: sqlbench 1>CPack: Compress package 1>CPack: Finalize package 1>CPack: Package C:/mariadb-5.1/MariaDB-5.1.60-win32.exe generated. 1>Build log was saved at "file://c:\mariadb-5.1\PACKAGE.dir\Debug\BuildLog.htm" 1>PACKAGE - 0 error(s), 0 warning(s) ========== Build: 1 succeeded, 0 failed, 81 up-to-date, 0 skipped ==========
..
Related Build Links:
- Building MySQL and MariaDB on Windows using Visual Studio 2012 Express versus Visual Studio 2010 Express:
http://www.chriscalender.com/?p=1245 - How to Build MySQL 5.6 on Windows from Source Code:
http://www.chriscalender.com/?p=1233 - How to Build MariaDB 10.0 on Windows from Source Code:
http://www.chriscalender.com/?p=1224 - How to Build MariaDB 5.5 on Windows from Source Code:
http://www.chriscalender.com/?p=1087 - How to Build MySQL 5.5 on Windows from Source Code:
http://www.chriscalender.com/?p=689 - Building MariaDB 5.1 on Windows:
http://www.chriscalender.com/?p=736 - Building MariaDB 5.3 on Windows:
http://www.chriscalender.com/?p=864 - MySQL 5.5 Windows Build Appendix : Full Outputs and Common Errors from Building MySQL 5.5 on Windows:
http://www.chriscalender.com/?p=720 - Maintaining (and Building) your MySQL Source Tree on Windows:
http://www.chriscalender.com/?p=759 - Resolving the bison.exe m4 Invalid argument Error when building MySQL/MariaDB/XtraDB on Windows:
http://www.chriscalender.com/?p=798 - Building XtraDB on Windows:
http://www.chriscalender.com/?p=820
