巧妙編譯MySQL代碼在Windows平臺中
如果你對Windows平臺編譯MySQL代碼的實際操作不是很熟練的話你就可以通過我們的文章對如果您對編譯MySQL代碼的實際操作有一個更好的了解,本文中所提到的知識有任何疑問可以透過CSDN的MySQL(和PHP搭配之***組合)。
MySQL(和PHP搭配之***組合)@CHINA支援論壇尋求幫助。
這篇文章中所提到的東西沒有任何的創(chuàng)新性,只是對MySQL(和PHP搭配之***組合)已有文檔的總結(jié)。
一、為什么要編譯代碼
小的時候媽媽就告訴我做事情要先有個打算,不然就做不成事情,所以要有個目的。我不知道閱讀這篇文章的朋
友你是否會注意MySQL(和PHP搭配之***組合)手冊。MySQL(和PHP搭配之***組合)在線手冊近期呈現(xiàn)一種“超越”趨勢,手冊中所描述的內(nèi)容很大部分都是開發(fā)版本中才能找到的,我希望自己在閱讀的同時獲得試驗的機(jī)會。同時,我也和其他朋友一樣痛恨軟件中存在各種BUG,所以我要自己編譯MySQL代碼。當(dāng)然,最開始我的初衷是希望借助Intel C++重新編譯MySQL(和PHP搭配之***組合)的代碼獲取更好的性能。
二、編譯代碼要如何準(zhǔn)備
這一部分包含下列要點,請務(wù)必注意。
編譯器
Cygwin
內(nèi)存
耐心
編譯器,編譯MySQL(和PHP搭配之***組合)代碼可以使用Cygwin下的GCC以及VC6.0,VC7.1。如果您使用Intel C++
的話,我建議您配合VC6.0使用。不推薦使用VC 7.0的原因是其本身所存在的BUG(已經(jīng)修復(fù),但不公開提供。),如果不裝補丁的話那么會造成錯誤(關(guān)于inline優(yōu)化可以暫時解決)。VC6.0請安裝SP4或SP5以及對應(yīng)的處理器支持補丁包。
cygwin,MySQL(和PHP搭配之***組合)的代碼絕大部分是在Linux編寫,所以很多實用工具以及配置腳本都是*nix風(fēng)
格,因此我們需要借助Cygwin這一 Unix 模擬環(huán)境。安裝時請選擇上 autoconf automake gnu make libtool bison perl。另外一點,MySQL(和PHP搭配之***組合)的開發(fā)使用bk進(jìn)行管理,而bk的客戶端也需要借助cygwin運行。如果只想編譯官方發(fā)布的Windows代碼,那么可以不去關(guān)心這些。
內(nèi)存,編譯MySQL(和PHP搭配之***組合)代碼非常消耗時間,至少我是這么覺得。我建議有一個足夠大內(nèi)存的機(jī)器,
否則會讓你有種生不如死的感覺(夸張ing...)。
耐心,***次編譯MySQL(和PHP搭配之***組合)尤其是開發(fā)中的代碼難免會遇到各種各樣的麻煩,嘗試去克服它們。
沒有人***次就應(yīng)該成功,假設(shè)連這些小問題都無法解決那么談何閱讀MySQL代碼?所以,多少給自己點信心,也多少有些耐心。
三、獲取資源
我希望閱讀完畢第二節(jié)朋友已經(jīng)準(zhǔn)備好了大部分東西,除了編譯器、cygwin之外我們還需要準(zhǔn)
備bk的客戶端,可以前往 www.bitkeeper.com 下載回來。如果你不知道cygwin的網(wǎng)址那么請到這里尋找 www.cygwin.com 。
當(dāng)準(zhǔn)備妥當(dāng)工具后我們訪問 MySQL(和PHP搭配之***組合).bkbits.net ,在這里我們可以看到一個表格。這里的表格每一
項目都對應(yīng)著一個MySQL(和PHP搭配之***組合)的項目,我們關(guān)心的是名為 MySQL(和PHP搭配之***組合)-4.1的項目,這是目前的主要工作重點 MySQL(和PHP搭配之***組合) 4.1.x 版本的開發(fā)樹。
獲取代碼:
shell> bk clone bk://MySQL(和PHP搭配之***組合).bkbits.net/MySQL(和PHP搭配之***組合)-4.1 MySQL(和PHP搭配之***組合)-4.1
更新MySQL代碼:
shell> bk pull bk://MySQL(和PHP搭配之***組合).bkbits.net/MySQL(和PHP搭配之***組合)-4.1 MySQL(和PHP搭配之***組合)-4.1
通過上邊兩個命令,我們就可以得到并隨時同步開發(fā)中的MySQL(和PHP搭配之***組合)4.1.x代碼,***次下載的話整個過程很慢大約有100多M的東西需要下載,然后還要解壓縮然后合成代碼。MySQL(和PHP搭配之***組合).bkbits.net 列出的其他項目分別是:
MySQL(和PHP搭配之***組合)-4.0
MySQL(和PHP搭配之***組合) 4.0.X 開發(fā)樹
MySQL(和PHP搭配之***組合)doc
MySQL(和PHP搭配之***組合)文檔
MySQL(和PHP搭配之***組合)odbc3
MySQL(和PHP搭配之***組合) ODBC驅(qū)動
MySQL(和PHP搭配之***組合)-3.23
MySQL(和PHP搭配之***組合) 3.23.X開發(fā)樹,昨日黃花。
MySQL(和PHP搭配之***組合)-4.1
MySQL(和PHP搭配之***組合) 4.1.x 開發(fā)樹,工作重點。
MySQL(和PHP搭配之***組合)-5.0
MySQL(和PHP搭配之***組合) 下一代版本
MySQL(和PHP搭配之***組合)cc
MySQL(和PHP搭配之***組合)控制中心
myodbc-3.52
初始兼容MySQL(和PHP搭配之***組合) 4.1的odbc驅(qū)動
我們都可以使用同樣的方式獲取并隨時同步MySQL代碼。
四、產(chǎn)生Windows代碼
默認(rèn)下載回來的代碼并不適合直接就用,把代碼copy到另外的目錄,然后使用BUILD目錄下
的實用工具 compile-pentium-max 配置代碼,配置完成后使用 scripts 目錄下的實用工具 make_win_src_distribution 產(chǎn)生一個適合Windows使用的代碼,這種方式得到的代碼如同官方下載所提供的代碼,最終成品是一個tar打包。執(zhí)行這些實用工具,也就是shell 腳本需要在代碼樹的***目錄。
五、編譯代碼
當(dāng)完成了上述工作之后編譯MySQL代碼應(yīng)該是最為輕松的,直接用VC 6.0或者VC.NET 2003打開工程
文件編譯就可以了。整個過程中并不需要其他的類庫進(jìn)行輔助,也什么難點。
相關(guān)網(wǎng)址:
MySQL(和PHP搭配之***組合)@china www.help2u.org
MySQL(和PHP搭配之***組合) AB www.MySQL(和PHP搭配之***組合).com
MySQL(和PHP搭配之***組合)郵件列表 lists.MySQL(和PHP搭配之***組合).com
MySQL(和PHP搭配之***組合) 缺陷跟蹤 bugs.MySQL(和PHP搭配之***組合).com
***,請各位注意通過本文所述方式獲得的MySQL(和PHP搭配之***組合)MySQL代碼遵循GPL協(xié)議,關(guān)于GPL的詳細(xì)信息請自行查閱相關(guān)網(wǎng)站。
【編輯推薦】