中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

QT常見錯誤的處理有哪些

發布時間:2021-12-15 09:49:19 來源:億速云 閱讀:184 作者:iii 欄目:互聯網科技

這篇文章主要講解了“QT常見錯誤的處理有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“QT常見錯誤的處理有哪些”吧!

關于一些編譯錯誤的處理

編譯過程中如果產生錯誤信息,需要解決掉才能繼續編譯下去,錯誤信息的產生主要是因為編譯器版本造成的,共有以下幾類錯誤信息:

1 缺少工具錯誤

 QT常見錯誤的處理有哪些

這是編譯時遇到的第一個問題,編譯 qt2 時需要使用 uic 工具,uic 是 PC 上運行的工具,

用來把 Qt 的界面文件,也就是.ui 文件轉換成.h 文件和.cpp 文件,轉換完成后才能交

給交叉編譯器編譯。

解 決 辦 法 :把 qtopia-free-2.2.0/dqt/bin 里 面 的 uic 文 件 拷 貝 到

qtopia-free-2.2.0/qt2/bin 下面即可。

注意:uic 拷貝到 qtopia-free-2.2.0/qt2/bin 后,需要修改一下 build 腳本文件,因為

如果您重新執行 build 命令,該腳本會把剛才編譯中的 qtopia-free-2.2.0 文件夾刪除,重新

解壓,形成新的 qtopia-free-2.2.0,開始編譯,這樣剛才拷貝的 uic 就沒意義了。

修改方法如下圖所示:

 QT常見錯誤的處理有哪些

源代碼需要 custom-linux-arm-g++.h/cpp 文件,但是沒找到。

解決辦法:

#cd ./qtopia-free-2.2.0/qtopia/src/libraries/qtopia

#cp custom-linux-ipaq-g++.h custom-linux-arm-g++.h

#cp custom-linux-ipaq-g++.cpp custom-linux-arm-g++.cpp

繼續編譯

#cd /root/yizhi

#./build

4 無法匹配到 QSizePolicy 類的構造函數

即 QSizePolicy 類沒有提供特定參數的構造函數

 QT常見錯誤的處理有哪些

找 到 后 在./qtopia-free-2.2.0/qtopia/src/libraries/qtopia/.ui/release-shared 目

錄下面,執行以下命令,修改該文件:

# gedit ./qtopia-free-2.2.0/qtopia/src/libraries/qtopia/.ui/release-shared/pas

swordbase_p.cpp

移動光標到第 35 行,如下圖所示:

 QT常見錯誤的處理有哪些

保存退出,執行如下命令重新編譯:

#./build

重新編譯后,會出現若干次這個類型的錯誤,解決辦法非常相似,這里就不一一介紹了。

5 類的成員函數前有額外的類名字

如下圖:

 QT常見錯誤的處理有哪些

修改后如下圖:

 QT常見錯誤的處理有哪些

解決辦法參考下圖:

 QT常見錯誤的處理有哪些

f=::open(tempFile,latin1(),0_CREAT | 0_WRONLY); 修改為

f=::open(tempFile,latin1(),0_CREAT | 0_WRONLY,0666);即增加 0666 參數,

保存,退出。

對于 open 函數來說,僅當創建新文件時,第三個參數使用,用于指定文件的訪問權限

注 意:共 有 兩 處 這 樣 的 修 改, 另 外 一 處:

qtopia-free-2.2.0\qt2\src\tools\qmemoryfile_unix.cpp 文件的第 143 行位置,修改

方 法與 qmemoryfile_unix.cpp 文件相似。

#./build 重新編譯

7 缺少 this 指針

如下圖:

 QT常見錯誤的處理有哪些

解決辦法如下:

# gedit .\ qtopia-free-2.2.0\qt2\src\kernel\qpixmapcache.cpp

修改第 125 行為

QT常見錯誤的處理有哪些

修改原因是因為 asm/page.h 文件里面定義了一些宏,咱們在這里重新定義了必須使用

的宏,所以這里就不需要 asm/page.h 文件了。

說明:繼續編譯后會出現幾次以上類型的錯誤,出現的錯誤類型就是以上總結的幾種

(出錯的信息通過 google 能找到解決方法),修改方法按以上步驟即可,主要就是發現哪個

文件出錯,找到該文件,用 gedit 打開該文件,移動到出錯的行上,修改,保存退出。出錯

的文件和行號是根據編譯時的錯誤提示信息來找到的,一定要查找第一個 Erro 的地方,這里

是需要重點關注的。通過這幾種錯誤類型的修改,您會對 Qt 移植有了新的認識,也提高了您

的軟件移植能力。

編譯成功完成后,Qtopia2.2.0 會自動的安裝到 qtopia-free-2.2.0/qtopia/zImage/opt

下面,如下圖

 QT常見錯誤的處理有哪些

注 意 : 編 譯 好 的 Qtopia 下 面 沒 有 字 體 , 自 己 需 要 把 字 體 放

到 Qtopia/lib/fonts 下面,qtopia-free-2.2.0/qt2/lib/fonts 文件夾下有各種可以用的字

體,但是我們只需要 helvetica 類型,該類型支持中文。執行以下命令:

#cp/root/yizhi/qtopia-free-2.2.0/qt2/lib/fonts/Helvetica* /root/yizhi/qtopia-fr

ee-2.2.0/qtopia/image/opt/Qtopia/lib/fonts/

另 外 需 要 把/root/yizhi/armlib 下 面 的 文 件 全 部 拷 貝 到

/root/yizhi/qtopia-free-2.2.0/qtopia/image/opt/Qtopia/lib/下面

字體文件和庫文件拷貝完成后,把 Qtopia 整個錄拷貝到文件系統的 /opt 錄下面,如

果該目錄下面已經有迅為電子提供的 Qtopia 文件夾,您可以把迅為電子提供的 Qtopia 文件

夾刪除掉,來運行您自己編譯的版本。

感謝各位的閱讀,以上就是“QT常見錯誤的處理有哪些”的內容了,經過本文的學習后,相信大家對QT常見錯誤的處理有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

qt
AI

炎陵县| 嘉兴市| 吉木乃县| 昭平县| 双流县| 连州市| 广东省| 磐安县| 澎湖县| 洛宁县| 葵青区| 溆浦县| 鄂伦春自治旗| 铁岭县| 新丰县| 西青区| 大姚县| 嵊泗县| 黎川县| 怀化市| 鲁甸县| 喀什市| 尼勒克县| 牡丹江市| 马鞍山市| 湖北省| 宜昌市| 云浮市| 昂仁县| 绥江县| 岳池县| 长泰县| 尚志市| 和顺县| 礼泉县| 衡山县| 稷山县| 武胜县| 宝清县| 聂荣县| 孝义市|