QT 運行錯誤 exited with code -1073741515


構建環境 Qt5.9.5 + MSVC2015 32bit, 編譯成功,運行時產生一下錯誤: 

Starting ****.exe...
exited with code -1073741515

問題原因:

  由於使用例C++第三方庫如:boost、odb,或者第三方QML庫如 toou2D,並且使用動態鏈接的方式進行鏈接,在運行時,由於缺少第三方庫,導致報錯。

解決方法:

  1、首先找到程序依賴的QT庫,包括依賴的qml庫: 打開當前使用的構建套件的命令行工具如: (MSCV 2015(32bit))

                 

 

       進入到運行的可執行文件***.exe目錄下,

       輸入  " windeployqt --qmldir C:\Qt\Qt5.9.5\5.9.5\msvc2015\qml .\ "  ,其中 C:\Qt\Qt5.9.5\5.9.5\msvc2015\qm 為QT安裝環境 qml 所在位置。

       這樣QT會自動將所依賴的動態庫全部導入到程序所在位置。

       此外如果使用了第三方的QML庫,QT可能不能自動導入第三方庫,需要手動導入,如果我使用的Toou2,需要手動將包含Toou2D.dll的目錄Toou2D放到當前目錄下。

       2、逐個加入第三方庫,如果不知道缺少什么庫,可以先直接運行程序,程序會啟動失敗,並顯示缺少的庫文件,如:

            

 

        

      所有依賴的動態庫導入后,便可正常啟動。

      運行時最好是在非構建環境上運行,因為我們的構建環境會將新增很多的環境變量,當程序在當前目錄下找不到依賴庫時,會在環境變量的目錄下尋找,所有經常出現調試或在編譯機器上能夠正常運行,拿到另一台電腦就不能運行了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM