首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Mariadb源代码编译过程

Mariadb源代码编译过程

作者头像
全栈程序员站长
发布2022-07-20 12:46:20
发布2022-07-20 12:46:20
8140
举报

大家好,又见面了,我是全栈君。

从微博上看到有人提及Mariadb,搜索了一下。找到地址https://mariadb.org/,这是mysql的一个分支,由原作者维护。意在与oracle分庭抗礼,避免oracle将来毕源。

眼下版本号Mariadb 10.0.10,我下载了一个。准备编译一个64位版本号,下载地址:

https://downloads.mariadb.org/mariadb/10.0.10/

下载后用cmake编译一下试试。进入cmake图形界面,编译器选择vs12.0 win64

Warning: Bison executable not found in PATH

这是警告未安装Bison。这个软件是unix下的,windows下能够不安装。不理了。

在cmake中generate。生成相关的文件。输出选择了build文件夹:

mariadb\mariadb-10.0.10\BUILD 文件夹下一堆的东西

选all build这个cmake生成的文件试试。

编译错误。。。sql_local.cc编译错误,太常见了,与前期编译mysql官方版本号一样。

处理方式早已驾轻就熟:

1)用word打开sql_local.cc,直接保存就可以,此时文件头部,被加入了不可见字符,标示utf8编码文件;

2)改动mysql.cc文件,找到test_lc_time_sz()函数。凝视掉语句 DBUG_ASSERT(0);

这两个改动完毕后,编译成功。

编译后能够输出到install文件夹。直接运行install失败,须要一些技巧处理install

打开installproject,里面事实上是一个命令行脚本。直接copy出来做完doinstall.bat

setlocal “C:\Program Files (x86)\CMake 2.8\bin\cmake.exe” -DBUILD_TYPE=$(Configuration) -P cmake_install.cmake if %errorlevel% neq 0 goto :cmEnd :cmEnd endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone :cmErrorLevel exit /b %1 :cmDone if %errorlevel% neq 0 goto :VCEnd

原来是运行cmake_install.cmake

改动里面的输出文件夹为:F:\Program Files\MySQL(确实是C:\Program Files\MySQL。在C盘不太好)

直接命令行运行,发现有个宏未定义。添加:

添加了一行: SET(CMAKE_INSTALL_CONFIG_NAME “Debug”) 还有若干pdb须要手工copy,然后就install成功了。

执行试试: F:\Program Files\MySQL\bin mysqld –console F:\Program Files\MySQL\bin mysql -u root -p 已经能够创建数据库和表了。

退出。 mysqladmin -u root shutdown

好。一切正常,后面就能够继续研究MySQL了。总之。MariaDB与mysql同源,编译方法类似。没有区别。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/108247.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年3月6,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档