Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL代码如何在 Windows环境下编译_MySQL

WBOY
Freigeben: 2016-06-01 14:03:27
Original
795 Leute haben es durchsucht
 

写这篇文章的目的只是告诉朋友们如何编译MySQL代码,或许有些人觉得从Windows平台编译MySQL的代码有些复杂,其实不然。如果您对本文中所提到的知识有任何疑问可以透过CSDN的MySQL板或者MySQL@CHINA支援论坛寻求帮助。这篇文章中所提到的东西没有任何的创新性,只是对MySQL已有文档的总结。

一、为什么要编译代码

我不知道阅读这篇文章的朋友你是否会注意MySQL手册。MySQL在线手册近期呈现一种“超越”趋势,手册中所描述的内容很大部分都是开发版本中才能找到的,我希望自己在阅读的同时获得试验的机会。同时,我也和其他朋友一样痛恨软件中存在各种BUG,所以我要自己编译代码。当然,最开始我的初衷是希望借助Intel C++重新编译MySQL的代码获取更好的性能。

二、编译代码要如何准备

这一部分包含下列要点,请务必注意。

■ 编译器

■ Cygwin

■ 内存

■ 耐心

编译器,编译MySQL代码可以使用Cygwin下的GCC以及VC6.0,VC7.1。如果您使用Intel C++的话,我建议您配合VC6.0使用。不推荐使用VC 7.0的原因是其本身所存在的BUG(已经修复,但不公开提供),如果不装补丁的话那么会造成错误(关于inline优化可以暂时解决)。VC6.0请安装SP4或SP5以及对应的处理器支持补丁包。

Cygwin,MySQL的代码绝大部分是在Linux编写,所以很多实用工具以及配置脚本都是*nix风格,因此我们需要借助Cygwin这一 Unix 模拟环境。安装时请选择上 autoconf automake gnu make libtool bison perl。另外一点,MySQL的开发使用bk进行管理,而bk的客户端也需要借助cygwin运行。如果只想编译官方发布的Windows代码,那么可以不去关心这些。

内存,编译MySQL代码非常消耗时间,至少我是这么觉得。我建议有一个足够大内存的机器,否则会让你有种生不如死的感觉。

耐心,第一次编译MySQL尤其是开发中的代码难免会遇到各种各样的麻烦,尝试去克服它们。没有人第一次就应该成功,假设连这些小问题都无法解决那么谈何阅读代码?所以,多少给自己点信心,也多少有些耐心。

三、获取资源

除了编译器、cygwin之外我们还需要准备bk的客户端,可以下载回来。当准备妥当工具后我们访问 mysql.bkbits.net ,在这里我们可以看到一个表格。这里的表格每一项目都对应着一个mysql的项目,我们关心的是名为 mysql-4.1的项目,这是目前的主要工作重点 MySQL 4.1.x 版本的开发树。

获取代码:

shell> bk clone bk://mysql.bkbits.net/mysql-4.1 mysql-4.1

更新代码:

shell> bk pull bk://mysql.bkbits.net/mysql-4.1 mysql-4.1

通过上边两个命令,我们就可以得到并随时同步开发中的MySQL4.1.x代码,第一次下载的话整个过程很慢大约有100多M的东西需要下载,然后还要解压缩然后合成代码。mysql.bkbits.net 列出的其他项目分别是:

 

我们都可以使用同样的方式获取并随时同步代码。

四、产生Windows代码

默认下载回来的代码并不适合直接就用,把代码copy到另外的目录,然后使用BUILD目录下的实用工具 compile-pentium-max 配置代码,配置完成后使用 scripts 目录下的实用工具make_win_src_distribution 产生一个适合Windows使用的代码,这种方式得到的代码如同官方下载所提供的代码,最终成品是一个tar打包。执行这些实用工具,也就是shell 脚本需要在代码树的顶级目录。

五、编译代码

当完成了上述工作之后编译代码应该是最为轻松的,直接用VC 6.0或者VC.NET 2003打开工程文件编译就可以了。整个过程中并不需要其他的类库进行辅助,也什么难点。

最后,祝福各位好运。另外也是最重要的。通过本文所述方式获得的MySQL代码遵循GPL协议,关于GPL的详细信息请自行查阅。

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage