免费高清特黄a大片,九一h片在线免费看,a免费国产一级特黄aa大,国产精品国产主播在线观看,成人精品一区久久久久,一级特黄aa大片,俄罗斯无遮挡一级毛片

分享

QT/E 交叉編譯 (ARM 部分)

 guitarhua 2011-12-05
QT/E 交叉編譯 (ARM 部分)

工具:tmake-1.11.tar.gz ,qt-embede-2.3.7.tar.gz , qt-x11-2.3.2.tar.gz,qt-free-1.7.tar.gz e2fsprogs.1.35.tar.gz,jpegsrc.v6b.tar.gz 同樣我在/home/mainframe下建立目錄qt_arm作為交叉編譯目錄
好!我們開(kāi)始分析腳本:
#cd /home/mainframe/qt_arm (拷貝上述所有壓縮包到該目錄包括e2fsprogs-1.35.tar.gz和jpegsrc.v6b.tar.gz兩個(gè)壓縮包)
當(dāng)前目錄為/home/mainframe/qt_arm
#tar xzvf +各個(gè)壓縮包,解壓到/home/mainframe/qt_arm,記得要解壓e2...和jpegsrc....兩個(gè)包哦
#mv tmake-11 tmake
#mv qt-2.3.7.tar.gz qt
#mv qt-2.3.2.tar.gz qt-x11
#mv qt-free-1.7.tar.gz qtopia
其實(shí) moc,uic,designer 等等文件可以copy 編譯PC機(jī)時(shí)產(chǎn)生的。沒(méi)問(wèn)題的,沒(méi)必要重新再編譯一次。
# cd ..
下面開(kāi)始配置環(huán)境變量,很多腳本都這樣寫(xiě)
#export QTDIR=$PWD/qt
#export QTEDIR=$QTDIR
#export QPEDIR=$PWD/qtopia
#export TMAKEDIR=$PWD/tmake
#export TMAKEPATH=$TMAKEDIR/llib/qws/linux-arm-g++(常規(guī)g++編譯器)這點(diǎn)就和PC上的不同了,qws目錄中有很多包括手機(jī),PDA和ARM之類(lèi)的g++編譯器。
#export PATH=$QTDIR/bin:$QPEDIR/bin:$TMAKEDIR/bin:$PATH
#export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
還是原來(lái)的說(shuō)法,寫(xiě)一個(gè)環(huán)境變量腳本,在需要的時(shí)候才啟用該腳本。!良好的習(xí)慣。。
#cd ..
#cd qt
#make clean
再次強(qiáng)調(diào)以下步驟是必要的,否則會(huì)出現(xiàn)cannot fine -lqte問(wèn)題
#cp $QPEDIR/src/qt/qconfig-qpe.h src/tools
#echo yes|./configure -platform linux-arm-g++ -qconfig qpe -qvfb -depths 16,24,32

(所有的configure文件都要按照自己的實(shí)際需要配置,別人的不一定適合你。)
#make -C src
上面沒(méi)有問(wèn)題的話(huà)那么我們開(kāi)始準(zhǔn)備編譯qtopia目錄內(nèi)的東西啦!
#cd ..
如果你這樣做:
cd qtopia/src
./configure -platform linux-arm-g++
make
那么會(huì)出現(xiàn)這樣的錯(cuò)誤:
cannot find -lqtopia以及uuid.h 找不到的問(wèn)題
#tar --xzvf e2fsprogs.1.35.tar.gz
#cd e2fsprogs-1.35
#./configure -host=arm-linux -with-cc=arm-linux-gcc -with-linker=arm-linux-ld -enable-eld-shlibs
-prefix=/usr/local/arm/2.95.3/arm-linux
注意:這里prefix選項(xiàng)很重要,必須指定交叉編譯工具2.95.3中的arm-linux,不要改成別的目錄或者不指定prefix選項(xiàng),
#make
#make install lib/uuid 安裝到該目錄

#tar xzf e2fsprogs-1.35.tar.gz
#cd e2fsprogs-1.35
#./configure -host=arm-linux -with-cc=arm-linux-gcc -with-linker=arm-linux-ld -enable-elf-shlibs -prefix=/usr/local/arm/2.95.3/arm-linux
#make
#make install lib/uuid/
將e2fsprogs-1.35/lib/目錄下uuid的文件夾復(fù)制到/home/mainframe/qt_arm/qtopia/include下
將e2fsprogs-1.35/lib/中的libuuid.a libuuid.so libuuid..so.1 libuuid.so.1.2復(fù)制到/home/mainframe/qtopia/lib下,有必要也copy一份到 /usr/local/arm/2.95.3/arm-linux/lib下面
好!問(wèn)題解決了。
如果你這樣做:
cd qtopia/src
./configure -platform linux-arm-g++
make
那么會(huì)出現(xiàn)以下錯(cuò)誤:
./usr/local/arm/2.95.3/arm-linux/bin/ld: cannot find -ljpeg
這是因?yàn)樵趒t目錄內(nèi)編譯是configure文件默認(rèn)配置為支持jpeg,然后在最后編譯的時(shí)候找不到相關(guān)的鏈接庫(kù).這個(gè)時(shí)候我們需要壓縮包jpegsrc.v6b.tar.gz,來(lái)解決這個(gè)問(wèn)題
下載jpegsrc.v6b.tar.gz到qtarm目錄并解壓,進(jìn)入目錄jpeg-6b:
./configure --enable-shared
make (得到libtools程序)
./configure --enable-shared
修改生成的Makefile文件:
prefix = /home/mainframe/qt (qte的路徑)
CC =/usr/local/arm/2.95.3/bin/arm-linux-gcc
AR =/usr/local/arm/2.95.3/bin/arm-linux-ar rc
AR2=/usr/local/arm/2.95.3/bin/arm-linux-ranlib
cp jconfig.doc jconfig.h
mkdir -p /home/mainframe/qt/man/man1
make
生成的libjpeg.so在.libs下,將libjpeg.so拷貝到/usr/local/arm/2.95.3/bin/arm-linux/lib
將/jpeg-6b/.libs目錄下的libjpeg.la,libjpeg.so ,libjpeg.so.62 以及l(fā)ibjpeg.so.62.0.0拷貝到目錄
/usr/local/arm/2.95.3/arm-linux/lib (沒(méi)有bin)
好!這個(gè)問(wèn)題解決了,再來(lái):
cd qtopia/src
./configure -platform linux-arm-g++
make

目前我也只做到了這一步,其他的還在探索中。歡迎大家交流。當(dāng)中的很多文字借鑒了別人的,哈!見(jiàn)諒。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多