導航:首頁 > 操作系統 > qt5linuxarm

qt5linuxarm

發布時間:2024-09-14 07:40:42

1. linux 下用arm體系QT編譯問題(目前我系統里有X86 和 arm體系(老師編好的)的QT各一個)

貌似是缺少系統庫,有些版本的linux編譯qt是會出現缺少系統庫而導致編譯不成功的問題,不是很推薦用最新的編譯器來編譯,其實2.4的內核和3.4.5的編譯器做qt就已經足夠了,你可以去查查看那些版本的linux下可以成功的編譯qt,安裝的時候盡可能把開發用的庫都選上,不然就只有自己再去打補丁,
僅作參考

2. Linux系統上用QT編寫ARM9繼電器控製程序的問題。 想寫個QT界面程序到arm板子上,通過界面的按鈕來控制繼電

以下是單片機實踐團為您解答:
1)既然你已經在windows下面搞qt了,轉到linux下面就沒啥編程問題了,都一樣的只是環境搭建有一點點不一樣。
2)windows下面直接用的qtsdk for windows的吧,其實是人家直接給你做好的環境,建議自己用everywhelesource自己編譯了解整個框架的結構,搞清楚windows下面如何顯示的問題就差不多清楚了。
3)啰嗦的說,windows下面你雖然能夠編譯你的代碼看到運行界面,不過我猜你沒有深入了解這個框架不是mfc他如何調用windows的顯示的,其實在linux下面道理也是一樣的。
4)下面說說要怎麼弄,主要是環境搭建,用你板子的交叉編譯器編譯qt源碼就是那個everywhelesource了,這個主要要搞清楚那個configure,進入目錄運行他生成makefile,記得configure後面要帶參數,很多的比如你的交叉編譯器。你可以用--help來看這些參數的詳細說明。這些你要找點專業的文章來看看,英文好點可以直接上官方網站看的,很詳細。
5)編譯好這個之後其實你就可以直接把windows下面的代碼拿來再次編譯就行了,不過有一點你控制繼電器的話還要你板子的gpio驅動,也就是控制引腳的,一般板子的驅動都有的。
6)如果你要模擬的話還要編譯x11版本的qt,這個主要是要得到那個虛擬顯存,用於調試用的,不用直接搞到板子上看效果,這個是x86版本提供的快捷方式,一般都用的,嗯很多的,看一些文章吧,畢竟我只能給你說個大綱蓋的。
7)再說個你這就零分,不然給你多說點,看著煩。不明白在hi我吧。

3. 請教QT5的移植問題

一、准備
busybox 1.14.1
qt-embedded-linux-opensource-src-4.5.1
tslib 1.4
gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72)
構建一個新的根文件系統目錄,路徑為
/root/rootfs

二、具體步驟:

1、編譯安裝busybox
在最新版。可以參考如下幾處要修改的地方:
Busybox Settings ---; Build Options ---; (arm-linux-)Cross Compiler prefix
Busybox Settings ---; Installation Options ---;[]Dont;t use /usr
Busybox Settings ---; Installation Options ---;(/root/rootfs) BusyBox installation prefix
Busybox Settings ---;Busybox Library Tuning ---;[*] Fancy Shell prompts
輸入如下命令,編譯並安裝。
make;make install

2、編譯安裝tslib
./autogen.sh
./configure -prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/usr/ -host=arm-linux ac_cv_func_malloc_0_nonnull=yes
make;make install

安裝目錄指明為 /usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/usr/
主要是為了在編譯QTE時,不用指定tslib的頭文件和庫文件,方便以後程序開發。

注意:在做這一步前,需要做一個目錄鏈接
在/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/armv4t/usr/目錄下
ln -s ../../usr/include ./

3、編譯安裝QTE
1)、最基本的配置
./configure -prefix /usr -embedded arm -xplatform qws/linux-arm-g++ -depths 16 -qt-mouse-tslib
-prefix /usr 使用這個配置,編譯後TE庫文件即可放在目標文件系統的/usr/lib下,而不是默認/usr/local/Trolltech/QtEmbedded-4.5.1 這個很深的目錄
2)、編譯
make
cp lib/* /root/rootfs/usr/lib -rd 將QTE庫文件拷貝到根文件系統的目錄
cp plugins /root/rootfs/usr -rd 將QTE插件目錄拷貝到根文件系統的目錄

4、根文件系統的設置
1)、這時/root/rootfs/usr下應該有 bin etc include lib sbin目錄
tslib生成的etc目錄,包含一個tslib的配置文件 nf,編輯此文件,去掉mole_raw input前的注釋
mv etc ../ 移動到rootfs的根目錄

2)、進行一次清理操作
arm-linux-strip lib/*.so
arm-linux-strip usr/lib/*.so

3)、編輯etc/profile,添加以下內容
export QWS_MOUSE_PROTO=Tslib:/dev/event0
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_TSDEVICE=/dev/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/nf
export TSLIB_PLUGINDIR=/usr/lib/ts

最後,通過mkyaffs2image 製作鏡像,燒寫鏡像,啟動ts_calibrate校驗觸屏即可。

4. qt交叉編譯,為什麼make指令調用的是g++,而不是arm-linux-g++

你找下,是不是在哪個Makefile腳本或類似config.mk的腳本里有個變數,變數值為編譯器名字的。
它可能是這樣的:
CROSS_COMPILE := arm-linux-
HOSTCXX = g++
這兩個名字拼起來才是交叉編譯器的名字,如果只用了HOSTCXX或者CROSS_COMPILE為空,它就用的g++了

5. linuxARM教程linuxarm教程

arm編程入門教程?

ARM編程入門教程包括:

1.了解ARM處理器的基本結構,如指令集、編程模型及體系結構等;

2.學習ARM編程的基礎知識,如寄存器、定址方式、棧等;

3.了解ARM編程的相關技術,如編譯、鏈接、調試等;

4.熟悉ARM編程的開發工具與環境,如KeilMDK、ARMRealView等;

5.掌握ARM編程應用os相關知識,如CortexM4、Linux等;

6.實現ARM編程應用,如硬體驅動、網路協議及實時操作系統等。

如何將linuxqt程序移植到arm開發板上?

將LinuxQt程序移植到ARM開發板上需要進行以下步驟:交叉編譯ARM平台所需的Qt庫和應用程序,將生成的可執行文件和Qt庫文件復制到ARM開發板上,確保ARM平台上有Qt的運行環境和依賴庫,並運行程序。可以使用交叉編譯工具鏈和遠程調試等工具完成移植過程。

如何編譯armlinux的go?

Golang也就是Go語言,現在已經發行到1.4.1版本了,語言特性優越性和背後Google強大靠山什麼的就不多說了。Golang的官方提供了多個平台上的二進制安裝包,遺憾的是並非沒有發布ARM平台的二進制安裝包。ARM平台沒辦法直接從官網下載二進制安裝包來安裝,好在Golang是支持多平台並且開源的語言,因此可以通過直接在ARM平台上編譯源代碼來安裝。整個過程主要包括編譯工具配置、獲取Golang源代碼、設置Golang編譯環境變數、編譯、配置Golang行環境變數等步驟。

註:本文選用樹莓派做測試,因為樹莓派是基於ARM平台的。

1、編譯工具配置

據說下個版本的golang編譯工具要使用golang自己來寫,但目前還是使用C編譯工具的。因此,首先要配置好C編譯工具:

1.1在Ubuntu或Debian平台上可以使用sudoapt-getinstallgcclibc6-dev命令安裝,樹莓派的RaspBian系統是基於Debian修改的,所以可以使用這種方法安裝。

1.2在RedHat或CentOS6平台上可以使用sudoyuminstallgcclibc-devel命令安裝。

安裝完成後可以輸入gcc--version命令驗證是否成功安裝。

2、獲取golang源代碼

2.1直接從官網下載源代碼壓縮包。

golang官網提供golang的源代碼壓縮包,可以直接下載,最新的1.4.1版本源代碼鏈接:https://storage.googleapis.com/golang/go1.4.1.src.tar.gz

2.2使用git工具獲取。

golang使用git版本管理工具,也可以使用git獲取golang源代碼。推薦使用這個方法,因為以後可以隨時獲取最新的golang源代碼。

2.2.1首先確認ARM平台上已經安裝了git工具,可以使用git--version命令確認。一般linux平台都安裝了git,沒有的話可以自行安裝,不同平台的安裝方法可以參考:http://git-scm.com/download/linux

2.2.2克隆遠程golang的git倉庫到本地

在終端cd到你想要安裝golang的目錄,確保該目錄下沒有名為go的目錄。然後以下命令獲取代碼倉庫:

gitclonehttps://go.googlesource.com/go

大陸地區可能會獲取失敗,在不翻牆的情況下我試了幾次都沒成功,原因大家都懂的。好在google已經將golang也託管到github上面,所以也可以通過下面命令獲取:

gitclonehttps://github.com/golang/go.git

視網路情況,下載可能需要不少時間。我2M的帶寬花了將近兩個小時才下載完,雖然整個項目不過幾十兆==

下載完成後,可以看到目錄下多了一個go目錄,裡面即為golang的源代碼,在終端上執行cdgo命令進入該目錄。

執行下面命令檢出go1.4.1版本的源代碼,因為現在已經有新的代碼提交上去了,最新的代碼可能不是最穩定的:

gitcheckoutgo1.4.1

至此,最新1.4.1發行版的源代碼獲取完畢

3、設置golang的編譯環境變數

主要有GOROOT、GOOS、GOARCH、GOARM四個環境變數需要設置,先解釋四個環境變數的意義。

3.1GOROOT

主要代表golang樹結構目錄的路徑,也就是上面git檢出的go目錄。一般可以不用設置這個環境變數,因為編譯的時候默認會以go目錄下src子目錄中的all.bash腳本運行時的父目錄作為GOROOT的值。為了保險起見,可以直接設置為go目錄的路徑。

3.2GOOS和GOARCH

分別代表編譯的目標系統和平台,可選值如下:

GOOSGOARCH

darwin386

darwinamd64

dragonfly386

dragonflyamd64

freebsd386

freebsdamd64

freebsdarm

linux386

linuxamd64

linuxarm

netbsd386

netbsdamd64

netbsdarm

openbsd386

openbsdamd64

plan9386

plan9amd64

solarisamd64

windows386

windowsamd64

需要注意的是這兩個值代表的是目標系統和平台,而不是編譯源代碼的系統和平台。樹莓派的RaspBian是linux系統,所以這些GOOS設置為linux,GOARCH設置為arm。

3.3GOARM

表示使用的浮點運算協處理器版本號,只對arm平台有用,可選值有5,6,7。如果是在目標平台上編譯源代碼,這個值可以不設置,它會自動判斷需要使用哪一個版本。

總結下來,在樹莓派上設置golang的編譯環境變數,可編輯$HOME/.bashrc文件,在末尾添加下面內容:

exportGOROOT=你的go目錄路徑

exportGOOS=linux

exportGOARCH=arm

編輯完後保存,執行source~/.bashrc命令讓修改生效。

4、編譯源代碼

環境變數配置完成自後就可以開始編譯源代碼。在go目錄下的src子目錄中,主要有all.bash和make.bash兩個腳本(另外還有兩個all.bat和make.bat腳本適用於window平台)。編譯實際上就是執行其中一個腳本,兩者的區別在於all.bash在編譯完成後還會執行一些測試套件。如果希望只編譯不測試,可以運行make.bash腳本。使用cd命令進入go下src目錄,執行./all.bash或者./make.bash命令即可開始編譯。由於硬體情況不同,編譯耗費的時間不同。在我的B型樹莓派編譯過程花費了將近半個小時,編譯完成後執行的測試套件又花費了差不多一個小時,總共花費了一個半小時左右。

5、配置golang運行環境變數

編譯完成後,go目錄下會生成bin目錄,裡面就是go的運行腳本。為了以後使用方法,可以將這個bin路徑添加到PATH環境變數中。同樣編輯~/.bashrc文件,因為前面設置過GOROOT環境變數指向go目錄了,所以只需要在末尾加上

exportPATH=$PATH:$GOROOT/bin

保存後同樣執行source~/.bashrc命令讓環境變數生效。

至此,golang源代碼編譯安裝成功。執行goversion應該就能看到當前golang的版本信息,表示編譯安裝成功。

怎樣搭建一個嵌入式開發平台(ARMLINUX)?

嵌入式開發平台一般都是跟著硬體走的。所以首先確定硬體平台,然後下載他們的SDK,裡面一般包含Linux系統/內核和相關工具。

一般直接用tar命令解壓即可。

在Linux下用QT編寫的程序怎麼在ARM上運行?

1.想要在開發板上運行,你需要移植QTE.添加arm-linux-交叉編譯工具鏈.把原有的工程交叉編譯生產開發板上可以運行的程序.把可執行程序和QTE庫考到開發板上.再改一下環境變數就ok了.2.用QtCreator啊.

6. arm嵌入式linux qt入門問題請教

1.qt-x11是支持x11庫的qt,用於linuxPc運行環境。qt-embedded是用於嵌入式環境的qt庫。
2.可以,只要選對了交叉編譯器。
3.qmake是用來生產makefile的,make是通過makefile文件編譯成可執行文件的。
4.他是嵌入式的qt庫不僅能編譯成arm平台的也可以編譯成其它平台的,比如mips平台。
5.沒有,要適應在真機上調試。
6.qt有個qtconf文件你可以通過修改該文件條件編譯qt庫,這樣可減小qt庫的體積,不過有些qt的方法會因為條件編譯的qt庫兒無法使用。
7.這個需要適配,有時要簡單修改一下qt代碼。
8.根據qt版本選擇,qt的版本高就選擇高版本的編譯器。編譯qt2一定要用2.95.3,qt4用3.4.1。
9.只要配上相應的qt庫就可以運行,要運行qt4就需要你自行編譯qt4的庫。

閱讀全文

與qt5linuxarm相關的資料

熱點內容
java與嵌入式開發 瀏覽:18
minios如何搭建文件伺服器 瀏覽:998
華為為啥有些壓縮包解壓不開 瀏覽:561
oracle可以編譯存儲嗎 瀏覽:472
機械男和女程序員創業 瀏覽:799
自己怎麼製作軟體app 瀏覽:212
javajson字元串轉java對象 瀏覽:228
必修一數學PDF 瀏覽:775
javascriptphpjsp 瀏覽:811
深圳一程序員退房完整版 瀏覽:294
後台管理app哪個好 瀏覽:766
加密鎖無模塊什麼意思 瀏覽:22
加密國度英文 瀏覽:20
科沃斯用了app怎麼使用按鍵 瀏覽:663
爬蟲編譯器價格 瀏覽:885
支付寶視頻app會員自動扣費怎麼關 瀏覽:230
單片機和wifi模塊 瀏覽:725
python倒序二進制代碼 瀏覽:362
廣東程序員離職 瀏覽:586
golang核心編程 瀏覽:170