交叉編譯Qt4 8 2

2021-06-09 02:04:44 字數 4189 閱讀 5242

分類: linux

qt 2012-07-04 11:36

171人閱讀收藏

舉報 1. 安裝交叉編譯器。利用友善之臂自帶的交叉編譯器。

將arm-linux-gcc-4.3.2.tgz 放在 /root下,執行如下操作

#cd /root

#tar xvzf arm-linux-gcc-4.3.2.tgz –c /

#gedit /root/.bashrc

在bashrc最後一行新增 export path=$path:/usr/local/arm/4.3.2/bin

#source /root/.bashrc

#arm-linux-gcc -v

檢視交叉編譯器版本為4.3.2

2. 編輯tslib對觸控螢幕的支援

將tslib1.4.tar.gz 放在/root 下,解壓並編譯:

# cd /root

# tar zxvf tslib1.4.tar.gz

# cd tslib

# ./autogen.sh

# ./configure –prefix=/usr/local/tslib/ –host=arm-linux ac_cv_func_malloc_0_nonnull=yes

# make

# make install

3. 配置qte4.8

將qt-everywhere-opensource-src-4.8.0.tar.gz壓縮包放在/opt下,解壓:

#cd /opt

#tar zxvf qt-everywhere-opensource-src-4.8.0.tar.gz

#mv qt-everywhere-opensource-src-4.8.0 qt-4.8.0-arm

#cd qt-4.7.0-arm

3.1製作乙個配置指令碼

#gedit autoconfig.sh

編輯檔案如下:

#!/bin/bash

./configure \

-prefix /usr/local/trolltech/qtembedded-4.8.2-arm \

-opensource \

-confirm-license \

-release -shared \

-embedded arm \

-xplatform qws/linux-arm-g++ \

-depths 16,18,24 \

-fast \

-optimized-qmake \

-pch \

-qt-sql-sqlite \

-qt-libjpeg \

-qt-zlib \

-qt-libpng \

-qt-freetype \

-little-endian -host-little-endian \

-no-qt3support \

-no-libtiff -no-libmng \

-no-opengl \

-no-mmx -no-sse -no-sse2 \

-no-3dnow \

-no-openssl \

-no-webkit \

-no-qvfb \

-no-phonon \

-no-nis \

-no-opengl \

-no-cups \

-no-glib \

-no-xcursor -no-xfixes -no-xrandr -no-xrender \

-no-separate-debug-info \

-nomake examples -nomake tools -nomake docs \

-qt-mouse-tslib

-i/usr/local/tslib/include \

-l/usr/local/tslib/lib

exit

3.2生成makefile檔案並編譯安裝

#chmod 755 autoconfig.sh

#./autoconfig.sh

#gmake

#gmake install

3.3 移植到mini2440

安裝完成後 將/usr/local/trolltech/qtembedded-4.8.0-arm/lib/fonts中的字型全部刪除 將 wenquanyi_120_50.qpf字型複製到fonts下:

#rm –rf /usr/local/trolltech/qtembedded-4.8.0-arm/lib/fonts/*

#cp wenquanyi_120_50.qpf /usr/local/trolltech/qtembedded-4.8.0-arm/lib/fonts/

3.4 製作開發板檔案系統

將root_qtopia-20100108.tar.gz 和 mkyaffs2image.tgz放在/root下。刪除qtopia圖形介面系統,刪除root資料夾下佔儲存較大的檔案。複製/usr/local/trolltech/qtembedded-4.8.0-arm/lib 資料夾到 /root/root_qtopia/ usr/local/trolltech/qtembedded-4.8.0-arm, 複製 /usr/local/tslib下所有內容到 /root/root_qtopia/usr/local/,修改觸控螢幕配置檔案 ts.conf, 修改環境變數,修改自啟動檔案 /root/root_qtopia/etc/init.d/rcs。最後將mkyaffs2image 工具生成檔案系統映象。

#cd /root

#tar zxvf root_qtopia-20100108.tar.gz

#tar zxvf mkyaffs2image.tgz

#cd root_qtopia

#rm –rf opt/qtopia

#rm –rf root/documents/*

#mkdir -p usr/local/trolltech/qtembedded-4.8.0-arm

#cp –r /usr/local/trolltech/qtembedded-4.8.0-arm/lib usr/local/trolltech/qtembedded-4.8.0-arm

#cp –r /usr/local/tslib/* usr/local/

#gedit usr/local/etc/ts.conf

#gedit etc/profile

#gedit etc/init.d/rcs

#cd /root

#mkyaffs2image root_qtopia root_qt-4.8.0.img

usr/local/etc/ts.conf: 取消注釋 module_raw input

etc/profile:在最後新增

export qtdir=/usr/local/trolltech/qtembedded-4.8.0-arm

export t_root=/usr/local

export path=$qtdir/bin:$path

export tslib_consoledevice=none

export tslib_fbdevice=/dev/fb0

export tslib_tsdevice=/dev/input/event0

export tslib_plugindir=$t_root/lib/ts

export tslib_conffile=$t_root/etc/ts.conf

export tslib_calibfile=/etc/pointercal

export qws_mouse_proto=tslib:/dev/input/event0

export ld_library_path=$t_root/lib:$qtdir/lib

etc/init.d/rcs:

刪除:/bin/qtopia &

echo 」 」 > /dev/tty1

echo 「starting qtopia, please waiting…」 > /dev/tty1

新增:source /etc/profile

echo 」 」 > /dev/tty1

echo 「starting touch calibrate 」 > /dev/tty1

echo 」 」 > /dev/tty1

sleep 1

/usr/local/bin/ts_calibrate &

Linux下編譯安裝QT 4 8 2

一 源 的獲取。官網最新的是4.8.2版本。二 解壓 tar zxvf qt everywhere opensource src 4.8.2.tar.gz 三 執行.config生成makefile config 下面出現對話方塊選擇open source edition.這是自由版。輸入yes接受...

ubuntu11 04下編譯安裝Qt4 8 2

主機版本 ubuntu11.04 編譯器版本 gcc 4.5.2 1 建立工作目錄 root rjm home mkdir work root rjm home ls root rjm home cd work root rjm home work mkdir qt root rjm home wo...

VS2012 RC 編譯Qt 4 8 2完整過程

背景 最近用vs2012越來越愛不釋手。但是qt只提供vs2010的官方的安裝包,暫時還不支援新版本的vs。於是,我需要手動用編譯qt4.8.2。過程也不複雜寫下來做個記錄吧。說明 我以前編譯qt時喜歡用靜態編譯,這樣做的好處是不需要vs的執行時庫,也不需要qt的庫,部署起來很方便。缺點就是debu...