国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
qtopia-opensource-src-4.2.3成功交叉編譯與移植
系統(tǒng)環(huán)境:同樣的方法同時在Ubuntu 8.10與 Fedora上實現(xiàn) 。
        交叉編譯器:arm-linux-gcc 3.4.1
        qt包: qtopia-opensource-src-4.3.3.tar.gz 請注意,不是qtopia-core-opensource-src-4.3.3.tar.gz兩個有很大的區(qū)別,前者大概有100M而后者只是前者的一部分內(nèi)核大概只有50M想要得到最后的image文件夾就一定要用不帶core的進(jìn)行config。我就是因為了個原因浪費了三天時間。
        第一步:建立好arm-linux-gcc 3.4.1。只要是有開發(fā)板的人這個搭建應(yīng)該不難。
        第二步:建立兩個文件夾source(里面就是解壓之后的源代碼)和target(進(jìn)行安裝qtopia的目錄我們想得到的那個image文件夾在make之后就會出現(xiàn)在這里)    

        第三步:將qtopia-opensource-src-4.2.3.tar.gz解壓縮并把里面的內(nèi)容放到剛建立的source文件夾里面(典型的做法是mv -r qtopia-4.2.3 source) ,進(jìn)入此目錄。
cd source/mkspecs/qws/Linux-arm-g++
sudo gedit qmake.conf
經(jīng)過我和老丁兩個人的實際教訓(xùn),一定要用絕對路徑,在arm-Linux- 前面加上路徑/usr/local/arm/3.4.1/bin/.(雖然我們已經(jīng)直接在/etc/bash.bashrc修改,加上PATH=$PATH:/usr/local/arm/3.3.2/bin來設(shè)置環(huán)境變量,但是在實際的編譯過程中依然遇到找不到路徑的問題,解決問題的辦法就是用絕對路徑)。
        第四步: 配置QT/E ,回到源代碼根目錄,在文件source/src/gui/embedded/qmouselinuxtp_qws.h中加入
#define QT_QWS_IPAQ
#define QT_QWS_IPAQ_RAW
         第五步:按照道理來說現(xiàn)在就應(yīng)該config了,但是我們的經(jīng)驗告訴大家,現(xiàn)在就config那會付出大把的時間代價來處理在漫長make中所遇到的各種問題。于是在這里我提前把make過程中我們遇到的所有問題和解決問題的辦法寫出來。
第一個要修改的地方是
sudo gedit /source/src/libraries/qtopiabase/qmemoryfile_unix.cpp 將里面-這行換成+這行,代碼不多
int f = :pen(tmpFile.toLatin1(), O_WRONLY);
if (!f)
- f = ::open(tmpFile.toLatin1(), O_CREAT | O_WRONLY);
+ f = ::open(tmpFile.toLatin1(), O_CREAT | O_WRONLY,S_IRUSR | S_IWUSR);
if (f){ fstat(f, &st);
如果不這么處理在make的過程中會出現(xiàn)下面的誤:
/usr/include/bits/fcntl2.h:51: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments
第二個要修改的地方是
sudo gedit /usr/local/3.4.1/arm-linux/include/linux/videodev2.h 在
#define V4L2_PIX_FMT_HI240 v4l2_fourcc('H','I','2','4') 之后添加
#define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B','A','8','1') 然后
sudo gedit /usr/local/3.4.1/arm-linux/sys_include/linux/videodev2.h
處理方式與上面那個一樣在
#define V4L2_PIX_FMT_HI240 v4l2_fourcc('H','I','2','4') 之后添加
#define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B','A','8','1') 不做這個修改在make的時候回出現(xiàn)下面這個問題:
ome/arm/source/src/applications/camera/formatconverter.cpp:75: error: `V4L2_PIX_FMT_SBGGR8' undeclared (first use this function) /home/arm/source/src/applications/camera/formatconverter.cpp:75: error: (Each undeclared identifier is reported only once for each function it appears in.) /home/arm/source/src/applications/camera/formatconverter.cpp: In static member function `static QList camera::FormatConverter::supportedFormats()': /home/arm/source/src/applications/camera/formatconverter.cpp:97: error: `V4L2_PIX_FMT_SBGGR8' undeclared (first use this function) make[6]: *** [.obj/release-shared/formatconverter.o] Error 1 以上處理方式是我們遇到的問題后進(jìn)行的相應(yīng)修改。各個版本不一樣的話可能遇到的問題也不一樣歡迎大家和我們聯(lián)系并共同討論遇到的問題。好,下面就可以進(jìn)行config了。
        第六步:開始configure
cd target
sudo ../source/configure -edition phone -xplatform linux-arm-g++ -arch arm -prefix /opt/qtopia -no-qvfb -displaysize 320x240 -no-ssl -no-bluetooth -no-dbus -no-drm -v4l2 -no-modem -no-libamr -extra-qt-config "-qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg" -extra-qtopiacore-config "-xplatform qws/linux-arm-g++ -embedded arm"
關(guān)于gongfigure的相關(guān)設(shè)置代表的含義大家應(yīng)該先了解一下,不然遇到問題了都不知道是由于什么原因引起的。了解configure的設(shè)置含義對自己的需要也有很大的幫助。不過一般按照我說的也應(yīng)該沒什么問題了。需要注意的一個地方就是-prefix /opt/qtopia 這里設(shè)置的文件夾位置就是編譯好之后那個image文件夾在開發(fā)板上移植到的位置。其他的設(shè)置可以按照上面寫的做。運行這個過程大概要10分鐘。不出什么問題就可以進(jìn)行下一步了。
        第七步:sudo make 然后就等吧。大概要運行三個小時(還得是你電腦性能不錯的前提下)。我經(jīng)常在運行到一個半小時的時候就出錯了??上胗卸嘤魫?!不過本文就是為了避免大家遇到跟我遇到的同樣郁悶的事情而寫的。
        第八步:sudo make install這步應(yīng)該不會出什么錯誤。我沒見在這步還能出錯的。如果在這步遇到問題,解決的辦法只有一個:去燒香吧!然后帶著好心情回來重新編譯。不然估計你的電腦會有性命危險。 沒有問題的話就應(yīng)該是成功一大半了。剩下的工作就是把編譯好的東西移植到開發(fā)板了。很多情況下在開發(fā)板上要設(shè)置和時區(qū)相關(guān)的信息。為了這個我們今天用了一天的時間進(jìn)行了重新的編譯,結(jié)果驗證我們虧了。 下面進(jìn)行開發(fā)板移植的講解。
        第一步:cd target
sudo cp -r image /home cd /home
sudo mv -r image qtopia (還記得configure中的那個-prefix /opt/qtopia 嗎?) 這幾步的目的就是把image拷貝到home下并把他重命名為qtopia。
        第二步:把/usr/local/arm/3.4.1/arm-linux/lib中的東西拷到剛重命名的那個qtopia的lib目錄下。具體怎么弄自己想辦法吧。
        第三步:啟動開發(fā)板,在開發(fā)板上 mkdir opt 然后把usr目錄中的除了share目錄之外的所有都刪了。進(jìn)入share目錄把里面除了zoneinfo目錄之外的所有目錄都刪除了。這個目的是為了設(shè)置時區(qū)。因為在編譯之前我們就默認(rèn)了在開發(fā)板的這個位置保存的就是開發(fā)板的時區(qū)信息。不這么做在開發(fā)板上運行程序會出錯。       
        第四步:建立開發(fā)板與電腦的nfs服務(wù)。不會弄的人先去弄那個吧........       
        第五步:通過NFS把剛我們建立的那個電腦home下的那個qtopia文件夾傳到開發(fā)板我們剛建立的那個opt目錄下(還記得configure中的那個-prefix /opt/qtopia 嗎?) 好了。移植完畢。 不過在移動那個qtopia文件夾的時候要用到這個命令:
mv -r -d qtopia /opt 不用-d那可是完全不幸地事情。。。。。。
        哦,還要在電腦上建立個文件,名字隨便起。在里面加上如下代碼后保存 然后把這個文件也通過nfs傳到開發(fā)板的任何位置都行。其實這么做的目的就是設(shè)置開發(fā)板的環(huán)境變量。運行開發(fā)板上的程序之前先運行那個文件。比如你那個文件叫sh那你就 ./sh就好了。 現(xiàn)在整個編譯和移植過程已經(jīng)完成了。可以在開發(fā)板上通過以下命令看看程序的運行了。 cd opt cd qtopia cd bin ./qpe 看看你的開發(fā)板!

 
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
[ARM Linux] [Qt] 移植Qt程序到ARM Linux上 (包括如何構(gòu)建專業(yè)的...
編譯及安裝最新的qt/x11 4.3.4,qtopia 4.3.1以及使用方法
QT嵌入式開發(fā)環(huán)境搭建
ubuntu10.10建立QT開發(fā)環(huán)境圖文詳解
一個頑疾——QT不能包含tslib的頭和庫文件聯(lián)合編譯的解決方法
Qt移植到ARM Linux教程
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服