Qt 交叉編譯 The tslib functionality test failed! 解決方案

Qt 交叉編譯在執行 ./configure … 的過程中可能出現 The tslib functionality test failed!

直接原因: Qt 源碼 config.tests/unit/tslib 目錄下的程序執行 make 未通過.


解決思路: cd config.tests/unit/tslib 目錄下, 執行 make, 如果不能通過, 分析 Makefile, 查看是否存在自配置

以外的信息.

解決方案:

1) 交叉編譯器配置的路徑不正確, 可修改 mkspecs/qws/<./configure -xplatform 指定的平臺>/qmake.conf 

中指定的交叉編譯器. 可以通過環境變量配置, 也可設置爲絕對路徑(推薦)

2)   tslib 的庫不兼容, 利用 file libts* 查看庫文件屬性, 如果是庫不兼容, 請重新編譯 tslib, 保證 tslib 的庫

兼容

3) 沒有找到tslib 的頭文件和庫文件。這種情況下有兩種方案:

 --> 修改 mkspecs/qws/<./configure -xplatform 指定的平臺>/qmake.conf 文件中 QMAKE_LIBDIR(庫文件) 和 

QMAKE_INCDIR(頭文件), 確保參數正確.

--> 在 ./configure -qt-mouse-tslib 後添加頭文件和庫文件, 如下

        ./configure -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib

4) QMAKE_LFLAGS=-static  被定義. 在 mkspecs/qws/<./configure -xplatform 指定的平臺>/qmake.conf 文件中

註釋 QMAKE_LFLAGS=-static

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章