詳解Qtopia 2.2.0 配置和交叉編譯
Qtopia 2.2.0 配置和交叉編譯是本文要介紹的內容,不多說我們直接看內容。我們提供的 qtopia-2.2.0 源碼包位于 linux\ linux-source\ qtopia-2.2.0-Real6410.tar.bz2, 解壓這個源碼包到 Ubuntu 的主目錄下,得到 qtopia-2.2.0-Real6410,進入
- qtopia-2.2.0-Real6410
目錄運行以下配置:
- echo yes | ./configure -qte '-embedded -no-xft -qconfig qpe -depths 16,32
- -system-jpeg -qt-zlib -qt-libpng -gif -no-g++-exceptions -no-qvfb -xplatform
- linux-arm-g++ -tslib' -qpe 'edition pda -displaysize 480x272 -fontfamilies
- "helvetica fixed micro smallsmooth smoothtimes unifont" -xplatform linux-arm-g++
- -luuid' -qt2 '-no-opengl -no-xft' -dqt '-no-xft -thread'
這樣便完成了對 qtopia 的配置,這里可以根據實際使用的 LCD 尺寸修改 displaysize 這個參數。接下來輸入
- make
- make install
便可以完成對 qtopa 的編譯和安裝,安裝結果就在 qtopia-2.2.0-Real6410/qtopia/image/opt/Qtopia
下面,為了簡化這個過程,我們提供了一個腳本 build 完成上面的幾個步驟,在該目錄下運行./build 即可。
注意:有些用戶反映在 Ubuntu-9.10 下編譯 qtopia-2.2.0 失敗,我也相應地做了一下試驗,的確有這個問題出現,這是由于主機環(huán)境 Ubuntu 中有相當多的庫函數沒有預裝,我在編譯 qtopia-2.20 的時候使用的是 Redhat AS4 的完全安裝版,因此編譯過程沒有出現問題。建議要進行 qtopia-2.2.0 編譯的***切換到 Redhat AS4 中進行。而在 Ubuntu 中編譯 QT4 是沒有問題的。
Qtopia-2.2.0 在開發(fā)板上的運行
上一步得到了 qtopia-2.2.0-Real6410/qtopia/image/opt/Qtopia/opt 這個結果,這里面實際上包含了所有的應用程序。接著就要把這些代碼放到板子的根文件系統中,這里不建議初學的讀者從零開始建立一個根文件系統,而直接使用我們在光盤中提供的
- linux\linux-source\qtopia.tar.gz
在 Ubuntu 主目錄下新建一個目錄 rootfs_qtopia,并把上面的源碼包解壓這個目錄,這樣講看到這個目錄下有一個 opt 目錄,這實際上就是編譯 qtopia 后得到的 opt 目錄,因此,直接把 qtopia 編譯得到的 qtopia-2.2.0-Real6410/qtopia/image/opt 整體復制到 rootfs_qtopia 目錄下代替原來的 opt 目錄,這樣自己的 qtopia 就算安裝好了。
接著就要設置好 Qtopia 的運行環(huán)境變量,環(huán)境變量的設置如下:
- export TSLIB_TSDEVICE=/dev/input/event1
- export TSLIB_CONFFILE=/usr/local/etc/ts.conf
- export TSLIB_PLUGINDIR=/usr/local/lib/ts
- export TSLIB_CALIBFILE=/etc/pointercal
- export QTDIR=/opt/Qtopia
- export QPEDIR=/opt/Qtopia
- export PATH=$QTDIR/bin:$PATH
- export LD_LIBRARY_PATH=$QTDIR/lib:/usr/local/lib:$LD_LIBRARY_PATH
- export QWS_MOUSE_PROTO="TPanel:/dev/input/event1"
- # USB:/dev/input/mice"
- export QWS_KEYBOARD=TTY:/dev/tty1
- export KDEDIR=/opt/kde
- export HOME=/root
- exec $QPEDIR/bin/qpe
我們已經在板子的根文件系統的/bin/下提供了一個名為 qtopia 的可執(zhí)行腳本來設置上面的參數,并啟動 qtopia。默認下這個腳本會在初始化的時候被執(zhí)行,用戶也可以通過運行qtopia 這個命令來執(zhí)行這個腳本。
Qtopia-2.2.0 ARM程序的開發(fā)
1。配置環(huán)境變量:source set-arm-env
- export QPEDIR=/usr/qtopia-2.2.0-Real6410/qtopia
- export QTDIR=/usr/qtopia-2.2.0-Real6410/qt2
- export TMAKEDIR=/usr/qtopia-2.2.0-Real6410/tmake
- export TMAKEPATH=$TMAKEDIR/lib/qws/linux-arm-g++
- export LIBDIR=/usr/qtopia-2.2.0-Real6410/qtopia/image/opt/Qtopia/lib
- export PATH=$QTDIR/bin:$QPEDIR/bin:$TMAKEDIR/bin:$PATH
- export LD_LIBRARY_PATH=/usr/qtopia-2.2.0-Real6410/qtopia/image/opt/Qtopia/lib:$LD_LIBRARY_PATH
2。新建程序hello.cpp,編寫程序
3。progen -t app.t -o hello.pro
4. tmake -o Makefile hello.pro
5. 修改Makefile
LIBS = $(SUBLIBS) -L$(LIBDIR) -lm -lqte -lstdc++
6. make
7. 新建hello.desktop, 并添加執(zhí)行權限chmod +x hello.desktop
- [Desktop Entry]
- Comment[]=A Hello Program
- Exec=hello
- Icon=Hello
- Type=Application
- Name[]=Hello
8. 復制hello.desktop到開發(fā)板Qtopia安裝目錄的apps/Applications目錄下,復制hello到開發(fā)板Qtopia安裝目錄的bin下,重啟開發(fā)板即可運行程序。
小結:關于詳解Qtopia 2.2.0 配置和交叉編譯的內容介紹完了,希望本文對你有所幫助!