国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

4412開發(fā)板編譯ARM-qtopia-free-src-2.2.0常見錯誤的處理

發(fā)布時間:2020-4-10 11:51    發(fā)布者:落風

關于一些編譯錯誤的處理

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

1 缺少工具錯誤

這是編譯時遇到的第一個問題,編譯 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 腳本文件,因為

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

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

修改方法如下圖所示:

就是在 rm –fr qtopia-free-2.2.0 和 tar xfvz qtopia-free-src-2.2.0.tar.gz 語句前加上

#注釋掉,修改后保存退出。

然后執(zhí)行#./build,重新編譯。

2 缺少類聲明

error: ‘QWSInputMethod’ has not been declared

修改方法如下:

#cd /root/yizhi/qtopia-free-2.2.0/qt2/src/kernel

# gedit qwindowsystem_qws.h

在前面增加以下兩行:

class QWSInputMethod;

class QWSGestureMethod;

保存退出,繼續(xù)編譯。

3 缺少文件錯誤

源代碼需要 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

繼續(xù)編譯

#cd /root/yizhi

#./build

4 無法匹配到 QSizePolicy 類的構造函數(shù)

即 QSizePolicy 類沒有提供特定參數(shù)的構造函數(shù)

解決辦法:

查看出錯信息的文件,這里是 passwordbase_p.cpp,且出錯的地方是第 35 行,使用

find 命令找到該文件在 Ubuntu 中的具體位置:

#find ./ -name passwordbase_p.cpp

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

錄下面,執(zhí)行以下命令,修改該文件:

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

swordbase_p.cpp

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

prompt->setSizePolicy(QsizePolicy((QsizePolicy::SizeType)7,

(QsizePolicy::SizeType) 7,0,0,prompt->sizePolicy().hasHeightForWidth()))

函數(shù)中的 0,0 去掉,即:

prompt->setSizePolicy(QsizePolicy((QsizePolicy::SizeType)7,

(QsizePolicy::SizeType) 7,prompt->sizePolicy().hasHeightForWidth()))

去掉后如下圖:

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

#./build

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

5 類的成員函數(shù)前有額外的類名字

如下圖:

解決辦法:

根據(jù)錯誤提示信息找到 qdawg.cpp 文件,gedit 打開該文件,移動光標到 294 行。

修改后如下圖:

保存退出,繼續(xù)編譯

#./build

6. open 函數(shù)調用缺少必要的參數(shù)

如下圖提示的錯誤:

解決辦法參考下圖:

打開 qmemoryfile_unix.cpp 文件,修改第 51 行

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

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

保存,退出。

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

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

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

方 法與 qmemoryfile_unix.cpp 文件相似。

#./build 重新編譯

7 缺少 this 指針

如下圖:

解決辦法:執(zhí)行下面的命令

# gedit ./qtopia-free-2.2.0/qt2/include/qvaluestack.h

移動光標到 57 行

將 remove( this->fromLast());改為 this->remove( this->fromLast());

保存退出。

8 缺少系統(tǒng)頭文件

如下圖所示:

解決辦法如下:

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

修改第 125 行為

即:

#define PAGE_SHIFT 12

#define PAGE_SIZE (1UL << PAGE_SHIFT)

#define PAGE_MASK (~(PAGE_SIZE-1))

//# include //PAGE_SIZE,PAGE_MASK,PAGE_ALIGN

這樣修改是因為新的 Linux 內(nèi)核源碼中已經(jīng)不包含這個頭文件了。

另外其他的地方也用到了該頭文件,同樣需要去掉,執(zhí)行以下命令:

# gedit ./qtopia-free-2.2.0/qt2/tools/qvfb/qvfbview.cpp

移動到第 39 行,修改為下圖所示:

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

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

說明:繼續(xù)編譯后會出現(xiàn)幾次以上類型的錯誤,出現(xiàn)的錯誤類型就是以上總結的幾種

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

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

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

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

的軟件移植能力。

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

下面,如下圖

進入到 Qtopia 錄下面,如圖:

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

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

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

#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 整個錄拷貝到文件系統(tǒng)的 /opt 錄下面,如

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

夾刪除掉,來運行您自己編譯的版本,運行方法參考下一章節(jié)的 Qtopia2.2.0 的使用。

更多內(nèi)容:關注迅為電子


本文地址:http://m.qingdxww.cn/thread-584161-1-1.html     【打印本頁】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內(nèi)容、版權和其它問題,我們將根據(jù)著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉USB橋接器以及基于CAN的主機和自舉程序應用程序
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發(fā)培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 貿(mào)澤電子(Mouser)專區(qū)
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲欧美日韩在线精品一区二区 | 骚婷婷 | 国产精品入口免费视频 | 国产香蕉视频在线观看 | 四虎影视精品永久免费网站 | 国产精品视频免费观看调教网 | 四虎国产精品永久地址99 | 精品一久久香蕉国产线看播放 | 精品精品国产欧美在线观看 | 久久久国产一区二区三区 | 国产成人精品2021欧美日韩 | 日韩欧美在线观看 | 黄页网站免费视频 | 影视精品网站入口 | 亚洲狼人综合干 | 中文日韩字幕一区在线观看 | 精品在线一区二区 | 亚洲图片在线 | 色婷婷精品大全在线视频 | 9966国产精品视频 | 在线综合视频 | 亚洲高清免费在线观看 | 精品久久一区二区三区 | 91香蕉国产视频 | 亚洲国产精品影院 | 91免费版视频 | 欧美大片日韩精品四虎影视 | 亚洲综合激情在线影院 | 91短视频在线观看2019 | 两个人在线观看视频bd | 99久久精品免费看国产免费 | 亚洲黄色在线播放 | 成人理伦 | 欧美+日本+国产+在线观看 | 免费日本在线视频 | 蜜臀在线免费观看 | 极品美女在线 | 国产99色 | 国产美女在线精品观看 | 国产一级做a爰片在线 | 女老师在线看 |