1. 程式人生 > >ubuntu eclipse CDT編譯mysql原始碼

ubuntu eclipse CDT編譯mysql原始碼

前段時間學習mysql原始碼,趁現在有空將學習記錄記錄一下。第一步ubuntu16.04原始碼編譯安裝mysql。

參考網址:http://blog.csdn.net/lipipifighting/article/details/78374119

1。通過瀏覽器下載eclipse CDT是免安裝版,解壓 

下載網址 https://www.eclipse.org/downloads/download.php?file=/oomph/epp/oxygen/R/eclipse-inst-linux64.tar.gz  
開啟終端(ctrl+alt+t),在當前使用者的根目錄(預設該目錄的擁有者為當前使用者)中建立資料夾software,將eclipse解壓到software資料夾,並且重新命名為eclipse(資料夾) 

mkdir ./software 
cd ./下載 
tar -zxvf ./eclip* ../software/ 
mv ../software/eclipse* ../software/eclipse 
2。安裝jdk1.8,在資料夾中開啟software/eclipse資料夾,雙擊執行可執行檔案,建立工作空間 
sudo apt-get install -y openjdk-8-jre-headless 
3。將mysql原始碼包解壓到工作空間,建立make install時伺服器和客戶端的安裝目錄,cmake配置一下boost目錄 

mkdir -p /home/lipipi/eclipse-workspace/software/mysql/data 
tar -zxvf mysql-5.19.0.tar.gz -C /home/lipipi/eclipse-workspace/ 
cd /home/lipipi/eclipse-workspace/mysql* 
cmake . -DWITH_DEBUG=on -DWITH_BOOST=/usr/local/boost -DCMAKE_INSTALL_PREFIX=/home/lipipi/eclipse-workspace/software/mysql -DMYSQL_DATADIR=/home/lipipi/eclipse-workspace/software/mysql/data 

5。開啟終端 
sudo -i進入root許可權 
chown -R lipipi /home/lipipi 
chmod -R 777 /usr/local/boost 
確保/home/使用者目錄都是歸當前使用者所有 
將boost目錄的許可權設定為任何人可讀可寫可執行 
因為有些root許可權下的操作可能會有影響出現permission deny的錯誤 

6。進入eclipse的解壓縮目錄,雙擊執行eclipse,在welcome頁面中找到這樣一條,或者file->import project(makefile project with existing code)


browse選擇原始碼mysql的原始碼目錄,設定toolchain為linux GCC,finish 
右下角有個進度條,等待匯入,匯入完成之後,關閉welcome頁面 
就能看到出現了一個project專案 

右鍵開啟專案屬性頁,進行配置builder 


不勾選use default build command 
自己寫命令為make 
應用 
退出離開屬性頁 
build project,等待make完成 
再次配置屬性頁,build指令為make install 
再次build project,等待make install完成 
之後便能在/home/lipipi/eclipse-workspace/software/mysql目錄下看到各種建立好的檔案和資料夾 
7。進入終端,同樣建立使用者組和建立使用者,初始化mysql伺服器 

cd /home/lipipi/eclipse-workspace/software/mysql 


groupadd mysql 
useradd -g mysql mysql 
passwd mysql 
輸入mysql使用者的密碼:mysql 
./bin/mysqld –initialize –user=mysql –basedir=/home/lipipi/eclipse-workspace/software/mysql –datadir=/home/lipipi/eclipse-workspace/software/mysql/data 
將最後一行生成的密碼記錄下來 
wpgpDeKIw2>I 
8。啟動mysql伺服器,並且檢查狀態,啟動客戶端,修改密碼 
./support-files/mysql.server start 
./bin/mysql -uroot -p 

set password=password(‘mysql’); 
flush privileges; 
資料庫初始化一次,在datadir中生成了相應的檔案和資料夾,下次重新make && make install之後,不需要重新初始化,直接使用新設定的密碼登入就可以啦 
9。關閉mysql伺服器 
./support-files/mysql.server stop 
10。以上只是單純地測試一下編譯是否成功,順帶配置一下初始的資料庫,接下來是如何使用eclipse除錯

如何除錯 


11。開啟終端 
cd ./eclipse-workspace/software/mysql 
./bin/mysql -uroot -pmysql 

這裡直接輸密碼的明文,圖個方便


12。接下來就是eclipse的使用了