本文目錄一覽:
- 1、求Qt5.10 for msvc2015 mysql靜態編譯版本的驅動
- 2、群內有人用mingw編譯的靜態編譯庫成功編譯過qt+mysql的程序嗎
- 3、如何對鏈接了mysqlclient的程序靜態編譯
- 4、易語言 mysql 支持靜態編譯嗎
- 5、qt5.8 for mingw編譯靜態版本時怎麼加mysql
求Qt5.10 for msvc2015 mysql靜態編譯版本的驅動
樓主可以通過查看依賴庫的軟件(比如windows depends)把所有依賴的DLL都打包起來
和你的EXE一起拷貝到別的電腦上就能直接跑 了
群內有人用mingw編譯的靜態編譯庫成功編譯過qt+mysql的程序嗎
mingw編譯出來的靜態庫後綴名為.a,編譯出來的動態庫的導入庫後綴名為.dll.a,而在windows下後綴名為.lib的庫可能是靜態庫也可能是動態庫的導入庫。
mingw編譯出來的動態庫的導入庫可以直接在vc中直接使用,例如
#pragma comment(lib, “libx264.dll.a”)
這樣你就不需要生成一個.lib後綴的動態庫的導入庫了,網上也有如何從.dll生成.lib的方法。
如果鏈接了動態庫的導入庫libpthread.dll.a,你發布的應用程序就要帶上pthread的dll。
使用靜態庫的好處是發布的應用程序組件模塊里不需要帶上相關的dll,如果要使用mingw編譯出來的靜態庫,可以如下:
#pragma comment(lib, “libx264.a”)
但是僅僅鏈接這麼一個靜態庫是不夠的,你還需要鏈接
libgcc.a
libmingwex.a
你可能還需要鏈接libmsvcrt.a
否則會報一堆錯誤:error LNK2001: 無法解析的外部符號
上面的這些庫在C:\MinGW\lib目錄或子目錄下面可以找到。
鏈接這些庫的原因是mingw使用的gcc編譯器和vc編譯器之間存在差異
如何對鏈接了mysqlclient的程序靜態編譯
項目屬性-配置屬性-常規-MFC的使用-使用標準Windows庫(不用MFC) 然後,C/C++-代碼生成-運行庫-多線程/MT或者多線程調試/MTd 帶d的是鏈接調試版本,DEBUG項目選/MTd,Release項目選/MT 如果使用MFC,在MFC的使用中設置靜態、動態鏈接
易語言 mysql 支持靜態編譯嗎
在老版本的MySQL 3.22中,MySQL的單表限大小為4GB,當時的MySQL的存儲引擎還是ISAM存儲引擎。
但是,當出現MyISAM存儲引擎之後,也就是從MySQL 3.23開始,MySQL單表最大限制就已經擴大到了64PB了(官方文檔顯示)。
也就是說,從目前的技術環境來看,MySQL數據庫的MyISAM存儲 引擎單表大小限制已經不是有MySQL數據庫本身來決定,而是由所在主機的OS上面的文件系統來決定了。
qt5.8 for mingw編譯靜態版本時怎麼加mysql
注意編譯器一定要和MYSQL的平台版本一致,32位的用32位的編譯器編譯,64位的用64位的編譯器編譯。
準備工作:MYSQL的目錄:D:\SQL_Server\mariadb
Qt5.1.1的目錄:C:\Qt
1. 先將D:\SQL_Server\mariadb中的include\和lib\文件夾複製到根目錄(C:),因為後面make時路徑不能有空格。
2. 打開QT5.1.1 for Desktop(MinGW 4.8)
cd C:\Qt\Qt5.1.1\5.1.1\Src\qtbase\src\plugins\sqldrivers\mysql
qmake “INCLUDEPATH+=D:\SQL_Server\mariadb\include” “LIBS+=D:\SQL_Server\mariadb\lib\libmysql.lib” mysql.pro
mingw32-make
如果出現找不到mysql.h文件就用qtcreator打開mysql.pro文件,配置項目,然後編譯,就會出現錯誤提示,把#include 改成#include ,編譯就行了,或回到命令行再次執行mingw32-make即可.
3. 編譯成功後。
進入到C:\Qt\Qt5.1.1\5.1.1\Src\qtbase\plugins\sqldrivers目錄下,選中qsqlmysql.dll和 qsqlmysqld.dll兩個文件,
複製到C:\Qt\Qt5.1.1\5.1.1\mingw48_32\plugins\sqldrivers目錄下。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/185858.html