1
我的任務是在沒有安裝Qt的計算機上的Windows項目中使用我的庫。所以我想用靜態鏈接的Qt代碼編譯我的庫。QT靜態庫靜態編譯
我不明白如何編譯我自己的代碼到一個靜態庫,靜態地鏈接所有Qt的東西。我已經下載了Qt源文件,並且使用msvc 2015靜態編譯(QT 5.8.0),並在Qt Creator中添加了新的靜態qmake補全。我試圖建立我的庫,它成功了,但在其他計算機上使用它,沒有安裝Qt,得到許多鏈接器錯誤LNK2001和LNK2019。
這是一個錯誤的例子:
Error LNK2019 Unresolved External Symbol "public: int __thiscall
QJsonValue::toInt(int)const " ([email protected]@@[email protected]) in function
"public: int __thiscall QJsonValueRef::toInt(void)const "
([email protected]@@QBEHXZ) ConsoleApplication2 c:\Users\Alex\documents\visualstudio
2015\Projects\ConsoleApplication2\ConsoleApplication2\TcpClient.lib(tcpthreadpart.obj)
所以,據我所知,所有的Qt源並沒有鏈接到我的圖書館。在互聯網上有一些指導如何編譯一個.exe
與靜態鏈接的QT,我試過他們編譯我的庫,但它失敗了。能否請你幫忙?