HNU小学期——MYSQL源码编译

一、预备 软件安装

Visual Studio 16 2019
cmake :
https://pan.baidu.com/s/1eNujLwNIxrmCXbqvIx2cKg?at=1687141139652
提取码:572l
bison 1.77
openssl 3.1.0

自己找教程安装就好,部分教程会使用perl,用于openssl的安装,本文使用直装的版本,故不建议perl的使用。

二、主要过程

参考
https://huaweicloud.csdn.net/63357367d3efff3090b57385.html?spm=1001.2101.3001.6650.5&utm_medium=distribute.pc_relevant.none-task-blog-2defaultBlogCommendFromBaiduactivity-5-125703640-blog-125343062.t0_edu_mix&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2defaultBlogCommendFromBaiduactivity-5-125703640-blog-125343062.t0_edu_mix&utm_relevant_index=6&q=MSB8066

需要注意的重点:
1.必须编译ALL_BUILD,只编译mysqld模块会导致mysql不能作为指令运行。
2.编译过程中,sql_commands_help_data.h文件是在编译的过程中生成的文件,所以即使修改也会被覆盖,先保存一份修改编码方式,之后进行cmakelists.txt的修改。

三、error解决

除却二里的error
我还遇到了:
1.堆空间不足
清c盘 cpj最好留下起码8G的空闲
2. MSB8066都是和配置相关的error 检查第一步的软件
如下是我的bison版本不匹配时报错
MSB8066 “D:\mysql88\mysql-8.0.33\mysql-8.0.33\build\CMakeFiles\e615cda2c3a93057c5636692dcac58e6\sql_yacc.cc.rule;D:\mysql88\mysql-8.0.33\mysql-8.0.33\build\CMakeFiles\e615cda2c3a93057c5636692dcac58e6\sql_hints.yy.cc.rule;D:\mysql88\mysql-8.0.33\mysql-8.0.33\build\CMakeFiles\e615cda2c3a93057c5636692dcac58e6\lex_hash.h.rule;D:\mysql88\mysql-8.0.33\mysql-8.0.33\build\CMakeFiles\195258e452781057e1ec81693703af80\GenServerSource.rule”的自定义生成已退出,代码为 1。 GenServerSource D:\vs\lde\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets 241

bison如何指定位置?

cmd->cmake-gui
在这里插入图片描述

在这里插入图片描述
这个报错至今没有解决,但仔细看cmakelists.txt中
在这里插入图片描述
将此过程注释,并直接粘贴mysql_fix_privilege_tables.sql.h文件进去

同样的道理,sql_commands_help_data.h也如此修改
在这里插入图片描述
目的都是阻止生成。
跳过后无报错产生

四、初始化踩坑记录

在这里插入图片描述
只生成mysqld是无法运行的
中间还有个报错,不过不影响,想要美观的可以看
https://blog.csdn.net/xuejianxinokok/article/details/117294505?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168761909916800211551626%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=168761909916800211551626&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-1-117294505-null-null.142v88control_2,239v2insert_chatgpt&utm_term=component_reference_cache.dll&spm=1018.2226.3001.4187

end
在这里插入图片描述

总结:老师给的前辈的报告很简略,每个人遇到的问题也五花八门,故作此篇。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值