Window下 Qt 編譯MySQL驅動(居然用到了動態庫格式轉換工具)

來源:互聯網
上載者:User

標籤:

一步步在Window下開發Qt

今天開始安裝MySQL,看了些關於MySQL安裝的博文,方法大致相同,但是遇到的細節問題各有不同,或者沒有講全面,下面來說說個人的安裝過程及遇到的問題.

1、首先下載,MySQL官網:http://www.mysql.com/downloads/installer/

2、安裝時,會提示安裝.netFramework4環境,這裡提供一個下載連結:http://dldx.csdn.net/fd.PHP?i=537939463366842&s=17682a85274604196d6c02560d3e410c,資料很好,感謝博主的分享~

3、按照提示一步步安裝,我一開始選擇的是Develop模式,http://blog.csdn.net/xw_hit/article/details/6127992上面講,要選擇Custom,後來改了回Custom模式,這裡不是說Develop模式不行,其中緣由沒有理解,也沒嘗試,這裡還是先選Custom模式

4、安裝完成後要設定環境變數,

     我的電腦-屬性-進階-環境變數-系統變數-path裡添加:C:\Program Files\MySQL\MySQL Server 5.5\bin

5、編譯Qt下mysql驅動,還需要下載一個動態庫格式轉換工具,網址為: http://www.qtcn.org/download/mingw-utils-0.3.tar.gz,解壓後把裡邊bin目錄裡的remip.exe拷到mingw的bin目錄裡就可以使用了

 

  1. cd C:\Program Files\MySQL\MySQL Server 5.5\lib  //這裡有libmysql.dll 等檔案,有的是在opt檔案下,根據個人情況
  2. reimp -d libmysql.lib  
  3. dlltool -k -d libmysql.def -l libmysql.a  

 

 

這樣編譯後產生了libmysql.a檔案,下面要進行編譯qt下的mysql外掛程式了

 

  1. cd %QTDIR%/src/plugins/sqldrivers/mysql  
  2.    qmake -o Makefile "INCLUDEPATH+=C:/INCLUDE" "LIBS+=C:/LIB/libmysql.a" mysql.pro  //這裡路徑不能有空格,為瞭解決這個問題,個人是把C:\Program Files\MySQL\MySQL Server 5.5\下的lib和include檔案拷貝到C:根目錄下,這樣編譯才沒有問題
  3.    mingw32-make  //產生libqsqlmysqld4.a 和 qsqlmysqld4.dll兩個檔案

把產生的libqsqlmysqld4.a 和 qsqlmysqld4.dll拷貝到QTDIR/plugins/sqldrivers/ 下。個人在這個地方搗騰了良久,最後看到一篇博文http://blog.csdn.net/xw_hit/article/details/6127992的最後一條,讓我茅塞頓開、恍然大悟,O(∩_∩)O哈哈~,作者這樣描述的(我只是修改了路徑):

 

  雖然產生成功,但是仍會提示QSqlDatabase: QMYSQL driver not loaded錯誤,這時我們需要將C:/MySQL/lib目錄下的libmySQL.dll檔案複製到我們Qt Creator安裝目錄下的qt/bin目錄中。

http://blog.csdn.net/styyzxjq2009/article/details/8131917

Window下 Qt 編譯MySQL驅動(居然用到了動態庫格式轉換工具)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.