



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、編譯ARM平臺的 QtEmbedded的MySQL插件和移植 MySQL到ARM開發(fā)板經(jīng)過幾天的努力,終于交叉編譯出了arm平臺所需Qt/E的MySQL插件(驅(qū)動),其中順便把MySQL也移植到了 mini2410的開發(fā)板上。編譯器:arm-linux-gcc (4.3.2)Pc 平臺:red hat由于mysql本身并不支持交叉編譯,所以編譯過程相對復(fù)雜,且各版本有所不同,本文針對 mysql-5.1.32。1、準備工作首先在 /home/bjwlxy 目錄下解壓 mysql-5.1.32.tar.gz,得到 mysql-5.1.32 ,進入目錄運行如下命令:# ./configure -p
2、refix=/usr/local/mysql# make然后將其改名為 mysql-pc備用。(注意不要 # make install)2、Configure再次解壓 mysql-5.1.32.tar.gz,得到 mysql-5.1.32,進入目錄,修改 configure文件# vi configure注釋以下代碼:21948 #if test "$cross_compiling" = yes; then21949 # ( ( $as_echo "$as_me:$LINENO: error: in '$ac_pwd':" >&am
3、p;521950 #$as_echo "$as_me: error: in '$ac_pwd':" >&2;21951 #( ( $as_echo "$as_me:$LINENO: error: cannot run test program whilecross compiling21952 #See 'config.log' for more details." >&521953 #$as_echo "$as_me: error: cannot run test program w
4、hile cross compiling21954 #See 'config.log' for more details." >&2;21955 # ( (exit 1); exit 1; ; ; 21956 #else22025 #fi30317 # if test "$cross_compiling" = yes; then30318 # ( ( $as_echo "$as_me:$LINENO: error: in '$ac_pwd':" >&530319 #$as_echo &
5、quot;$as_me: error: in '$ac_pwd':" >&2;30320 #( ( $as_echo "$as_me:$LINENO: error: cannot run test program whilecross compiling30321 #See 'config.log' for more details." >&530322 #$as_echo "$as_me: error: cannot run test program while cross compiling
6、30323 #See 'config.log' for more details." >&2;30324 # ( (exit 1); exit 1; ; ; 30325 #else30408 #fi保存退出。# ./configure -host=arm-linux -prefix=/usr/local/mysql如果出現(xiàn)錯誤error: No curses/termcap library found再次配置#./configure -host=arm-linux -with-named-curses-libs=/usr/lib/libncurses.s
7、o.5 -prefix=/usr/local/mysql3、Make# make出現(xiàn)錯誤1/usr/lib/libncurses.so.5: could not read symbols: Invalid operationead symbols: Invalid operation這個是因為libncurses.so.5運行平臺不是arm所致,這時,需要我們手動交叉編譯 libncurses.so.5文件,方法和下面的類似:1、下載 ncurses-5.6.tar.gz 安裝包,#cd home解壓包#tar zxvf ncurses-5.6.tar.gz#cd ncurses-5.6配置#
8、./configure -host=arm-linux -prefix=/usr -with-shared -without-debug#make2、備份 /usr/lib/ 里面的 libncurses.so.5 , libncurses.so.5.6cp /usr/lib/libncurses.so.5 /usr/lib/libncurses.so.5.bakcp /usr/lib/libncurses.so.5.6 /usr/lib/libncurses.so.5.6.bak復(fù)制 ncurses-5.6/lib 目錄下交叉編譯過的libncurses.so.5 , libncurses.
9、so.5.6 至ij/usr/lib/#cp lib/libncurses.so.5 /usr/lib/#cp lib/libncurses.so.5.6 /usr/lib/接著#cd /home/bjwlxy/mysql-5.1.32繼續(xù)#make出現(xiàn)錯誤2make2: Leaving directory '/home/zhaowg/mysql-pc/sql'./gen_lex_hash > lex_hash.h-t/bin/sh: ./gen_lex_hash: cannot execute binary filemake1: * lex_hash.h 錯誤 126這
10、是由于編譯的 arm類型的程序不能在PC上運行造成的,于是前面做的準備工作派上用場了:# cp ./mysql-pc/sql/gen_lex_hash sql/# make錯誤3sql_parse.cc:5432:21: operator '<' has no left operandmake3: * sql_parse.o車昔誤 1檢查sql_parse.cc的5432行,發(fā)現(xiàn)宏變量 STACK_DIRECTION沒有定義初值,網(wǎng)上查找資料發(fā)現(xiàn)arm中定義STACK_DIRECTION 為1,于是在文件開 5432的上一行 加上#vi sql/sql_parse.cc#
11、 define STACK_DIRECTION 1保存退出。# make完成4、make install# make install會停在make INSTALL_TO_DIR="/usr/local/mysql/mysql-test" install_test_filesmake4: Entering directory '/home/zhaowg/mysql-pc/mysql-test'一段時間,不要以為出錯了,耐心等一會! 到此,編譯arm平臺的mysql基本完成。編譯arm平臺的QtEmbedded的mysql插件進入Qt/E目錄#cd $QTDIR
12、/src/plugins/sqldrivers/mysql#qmake "INCLUDEPA TH+=/usr/local/mysql/include/mysql” "LIBS+=-L/usr/local/mysql/lib/mysql -lmysqlc lient_r" #make#make install#cd $QTDIR/plugins/sqldrivers/#ls如果出現(xiàn)libqsqlite.so ,說明編譯成功。移植MySQI®開發(fā)板將/usr/local目錄下的mysql文件夾拷貝到開發(fā)板的/usr/local目錄下,并
13、在環(huán) 境變量里面聲明。# export PATH=" $PTTH:/usr/local/mysql/bin”6、開啟mysqld服務(wù)首先將以下內(nèi)容保存為 /etc/my.confmysqlddatadir=/var/lib/mysqlsocket=/tmp/mysql.sockuser=root# Default to using old password format for compatibility with mysql 3.x# clients (those using the mysqlclient10 compatibility package).old_passwords=1mysqld_safelog-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid因為在/var/run
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋁業(yè)公司原材料采購合同
- 個人與公司勞務(wù)派遣合同樣本
- 車輛及車牌買賣合同模板
- 借款擔(dān)保合同擔(dān)保借款合同
- 二零二五總監(jiān)聘用勞動合同補充協(xié)議
- 二零二五版公司租賃房屋協(xié)議書合同書
- 樹林承包合同書范例二零二五年
- 2025年建筑工程施工合同糾紛的解決途徑
- 2025物業(yè)管理人員聘用合同模板
- 廣告發(fā)布與行紀合同
- 馬鞍山職業(yè)技術(shù)學(xué)院馬鞍山技師學(xué)院招聘筆試真題2024
- 2025年中國協(xié)同辦公系統(tǒng)行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 70周歲以上駕駛員駕照年審換本三力測試題庫答案
- 2024年貴州省中考滿分作文《關(guān)鍵時刻我在這樣做》4
- 2024年社區(qū)工作者考試必考1000題含完整答案(全優(yōu))
- 手衛(wèi)生知識考核試題題庫及答案
- 專項突破03四則運算實際問題(應(yīng)用題)(8大考點)(學(xué)生版)-四年級數(shù)學(xué)下冊(人教版)
- 加油站的法規(guī)法律合規(guī)管理
- 2025年孝感道路運輸從業(yè)資格證考試模擬試題
- 學(xué)生急救演練
- 學(xué)生禮儀課件
評論
0/150
提交評論