搜尋
首頁系統教程Linux如何將應用程式部署到嵌入式Linux中的操作步驟?

摘要:AWTK是ZLG開發的可在各種作業系統運作的通用GUI引擎,自發布以來遭到越來越多開發者和使用者的偏好。 AWTK適用於嵌入式領域,本文將闡述如何將AWTK應用佈署到嵌入式開發環境。

AWTK早已在多個嵌入式平台上做好了移植,並提供了相應的模板工程,如:嵌入式Linux、AWorksOS、RT1052裸系統以及STM32裸系統等。 AWTK應用程式在Windows調試好以後,佈署到這種嵌入式開發環境十分便捷,只須要簡單的幾個步驟就可以了,具體的內容請看下文。

下邊我們就以HelloDesigner-Demo為例,說明如何將應用程式佈署到內嵌開發環境中。

把應用程式佈署到嵌入式Linux

#下邊以ZLG週立功Linux開發套件M6708-T(Cortex-A9)為載體,怎樣將應用佈署到嵌入式Linux中,操作步驟如下:

安裝交叉編譯器(Ubuntu16x64)

在M6708-T開發套件光盤資料中,找到arm-poky-linux-gnueabi編譯器的安裝腳本並執行,預設安裝在類似如下的目錄:

/opt/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi

下載AWTK整合包

在AWTK官網下載整合發挎包,將整合包其解壓縮到Linux系統目錄中(如:/home/user):

更改編譯工具鏈

更改awtk-linux-fb/awtk_config.py檔:

設定TOOLS_PREFIX為arm-poky-linux-gnueabi編譯器的路徑,如右圖:

嵌入式linux开发实践教程_嵌入式linux开发教程 周立功_嵌入式linux开发视频教程

#假如CPU支援硬浮點,則開啟“-mfloat-abi=hard”,如右圖所示:

嵌入式linux开发实践教程_嵌入式linux开发教程 周立功_嵌入式linux开发视频教程

#編譯應用程式

將HelloDesigner-Demo複製到user_apps目錄下。執行下邊的指令,目標檔案將會輸出到awtk-linux-fb/build/bin:

cd/home/user/awtk-linux-fb

sconsAPP=../user_apps/HelloDesigner-Demo

#打包應用程式

編譯完成後,還必須把應用程式和資源檔打包在一起,就能下載到板子上運行,執行下邊的命令,生成壓縮包release.tar.gz:

cd/home/user/awtk-linux-fb

./release.sh../user_apps/HelloDesigner-Demo/res

運行應用程式

把release.tar.gz上傳到開發板並解壓,之後透過ssh或並口調助手讓板子運行:

./release/bin/demo

#把應用程式佈署到AWorksOS

下邊以RT1052平台為例嵌入式linux開發教學 周立功,介紹怎麼將自己的應用移植到AWorksOS平台。從ZLG官網下載最新的RT1052光盤資料,上麵包含自帶移植好的AWTKEclipse工程和AWTKKeil工程。只要封鎖工程中自帶的範例程式碼檔案(一般名子是xxx_demo),之後往工程中加入使用者自己的應用程式碼就可以了。

使用Eclipse建立應用程式

找到AWorksOSSDK開發套件下的aw_m1052_disk-2.0.0目錄,之後按下邊步驟操作:

開啟m1052_awtk工程

屏蔽demos範例

屏蔽m1052_awtk工程自帶demos應用範例,可按右圖所示操作:

嵌入式linux开发实践教程_嵌入式linux开发视频教程_嵌入式linux开发教程 周立功

#把應用程式加入工程

將HelloDesigner-Demo複製到:

aw_m1052_disk-2.0.0-testexamplesapplicationapp_awtk_demosrcuser_apps目錄下,再刷新工程,顯示如右圖。之後就可以編譯調試工程了。

使用Keil建立應用程式

找到aw_easyarmrt1052_disk-2.0.1目錄(AWorksOSSDK中)嵌入式linux開發教學 周立功,之後按下邊步驟操作:

開啟easy_arm_rt1052.uvprojx工程

屏蔽awtk-demo範例

在easy_arm_rt1052工程中,預設提供了一個awtk-demo範例。若要將自己的應用程式加入到該工程,先屏蔽awtk-demo資料夾,可按右圖所示操作:

嵌入式linux开发实践教程_嵌入式linux开发视频教程_嵌入式linux开发教程 周立功

#把應用程式加入工程

將HelloDesigner-Demo中的原始碼(一般在src目錄下),加入到這個Keil工程中,可按右圖所示操作。之後就可以編譯調試工程了。

嵌入式linux开发实践教程_嵌入式linux开发视频教程_嵌入式linux开发教程 周立功

#把應用佈署到其他平台

用於RT1052裸系統的awtk-easyarm-rt1052-raw工程

STM32裸系統的awtk-stm32f429igtx-raw工程

Вышеуказанные проекты можно найти на официальном сайте AWTK или на GitHub. Если вы хотите добавить свое собственное приложение для компиляции и запуска в таком проекте Keil, используйте метод Handan Xiaoyi Red Hat Linux, то есть сначала заблокируйте файл примера кода, который поставляется с проектом (обычно с именем xxx_demo), а затем добавлять пользователей в код собственного приложения проекта.

RT1052 Проект Кейла с голой системой

Получите исходный код awtk-easyarm-rt1052-raw

gitclone

Откройте проект awtk_gui_demo.uvprojx

Диаграмма щитов – демонстрационный пример

В проекте awtk_gui_demo по умолчанию предоставляется пример Chart-Demo. Если вам нужно добавить в проект свое приложение, сначала заблокируйте папку Chart-Demo и действуйте, как показано справа:

嵌入式linux开发实践教程_嵌入式linux开发教程 周立功_嵌入式linux开发视频教程

Добавляем приложение в проект

Добавьте исходный код HelloDesigner-Demo (обычно в каталоге src) в этот проект Keil и действуйте, как показано справа. После этого можно скомпилировать и отладить проект.

嵌入式linux开发实践教程_嵌入式linux开发教程 周立功_嵌入式linux开发视频教程

STM32 проект Keil без операционной системы

Ниже используется STM3232FF429429 в качестве примера операционной системы Linux, чтобы объяснить, как добавить собственное приложение в проект.Действия следующие:

Получить исходный код STM3232ff429429igtx

gitclone

嵌入式linux开发实践教程_嵌入式linux开发视频教程_嵌入式linux开发教程 周立功

Получить исходный код AWTK

Нам нужно поместить исходный код AWTK в каталог проекта и вместе участвовать в компиляции, а также обеспечить согласованность версии AWTKSDK и приложения. Получить исходный код AWTK можно двумя способами:

Форма 1 (рекомендуется использовать этот метод):

Найдите каталог установки Designer и скопируйте весь каталог AWTKSDKawtk в каталог awtk-stm32f429igtx-raw.

Форма 2:

Загрузите последнюю версию исходного кода AWTK с GitHub, выполнив следующую команду.

cdawtk-stm32f429igtx-raw

gitclone

Откройте проект awtk.uvprojx

Пример блокировки AWTK-DEMO

В проекте awtk по умолчанию предоставляется пример AWTK-DEMO. Если вам нужно добавить в проект собственное приложение, сначала заблокируйте папку AWTK-DEMO и действуйте, как показано справа:

嵌入式linux开发教程 周立功_嵌入式linux开发视频教程_嵌入式linux开发实践教程

嵌入式linux开发视频教程_嵌入式linux开发实践教程_嵌入式linux开发教程 周立功

Добавьте приложение в проект

Добавьте исходный код HelloDesigner-Demo (обычно в каталоге src) в этот проект Keil и действуйте, как показано справа. После этого можно скомпилировать и отладить проект.

嵌入式linux开发教程 周立功_嵌入式linux开发实践教程_嵌入式linux开发视频教程

以上是如何將應用程式部署到嵌入式Linux中的操作步驟?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:ITcool。如有侵權,請聯絡admin@php.cn刪除
Linux和Windows處理設備驅動程序的區別有什麼區別?Linux和Windows處理設備驅動程序的區別有什麼區別?Apr 25, 2025 am 12:13 AM

Linux和Windows在處理設備驅動程序上的差異主要體現在驅動管理的靈活性和開發環境上。 1.Linux採用模塊化設計,驅動可以動態加載和卸載,開發者需深入理解內核機制。 2.Windows依賴微軟生態,驅動需通過WDK開發並簽名認證,開發相對複雜但保證了系統的穩定性和安全性。

比較和對比Linux和Windows的安全模型。比較和對比Linux和Windows的安全模型。Apr 24, 2025 am 12:03 AM

Linux和Windows的安全模型各有優勢。 Linux提供靈活性和可定制性,通過用戶權限、文件系統權限和SELinux/AppArmor實現安全。 Windows則注重用戶友好性,依賴WindowsDefender、UAC、防火牆和BitLocker保障安全。

Linux和Windows之間的硬件兼容性有何不同?Linux和Windows之間的硬件兼容性有何不同?Apr 23, 2025 am 12:15 AM

Linux和Windows在硬件兼容性上不同:Windows有廣泛的驅動程序支持,Linux依賴社區和廠商。解決Linux兼容性問題可通過手動編譯驅動,如克隆RTL8188EU驅動倉庫、編譯和安裝;Windows用戶需管理驅動程序以優化性能。

Linux和Windows之間虛擬化支持有哪些差異?Linux和Windows之間虛擬化支持有哪些差異?Apr 22, 2025 pm 06:09 PM

Linux和Windows在虛擬化支持上的主要區別在於:1)Linux提供KVM和Xen,性能和靈活性突出,適合高定制環境;2)Windows通過Hyper-V支持虛擬化,界面友好,與Microsoft生態系統緊密集成,適合依賴Microsoft軟件的企業。

Linux系統管理員的主要任務是什麼?Linux系統管理員的主要任務是什麼?Apr 19, 2025 am 12:23 AM

Linux系統管理員的主要任務包括系統監控與性能調優、用戶管理、軟件包管理、安全管理與備份、故障排查與解決、性能優化與最佳實踐。 1.使用top、htop等工具監控系統性能,並進行調優。 2.通過useradd等命令管理用戶賬戶和權限。 3.利用apt、yum管理軟件包,確保系統更新和安全。 4.配置防火牆、監控日誌、進行數據備份以確保系統安全。 5.通過日誌分析和工具使用進行故障排查和解決。 6.優化內核參數和應用配置,遵循最佳實踐提升系統性能和穩定性。

很難學習Linux嗎?很難學習Linux嗎?Apr 18, 2025 am 12:23 AM

學習Linux並不難。 1.Linux是一個開源操作系統,基於Unix,廣泛應用於服務器、嵌入式系統和個人電腦。 2.理解文件系統和權限管理是關鍵,文件系統是層次化的,權限包括讀、寫和執行。 3.包管理系統如apt和dnf使得軟件管理方便。 4.進程管理通過ps和top命令實現。 5.從基本命令如mkdir、cd、touch和nano開始學習,再嘗試高級用法如shell腳本和文本處理。 6.常見錯誤如權限問題可以通過sudo和chmod解決。 7.性能優化建議包括使用htop監控資源、清理不必要文件和使用sy

Linux管理員的薪水是多少?Linux管理員的薪水是多少?Apr 17, 2025 am 12:24 AM

Linux管理員的平均年薪在美國為75,000至95,000美元,歐洲為40,000至60,000歐元。提升薪資可以通過:1.持續學習新技術,如雲計算和容器技術;2.積累項目經驗並建立Portfolio;3.建立職業網絡,拓展人脈。

Linux的主要目的是什麼?Linux的主要目的是什麼?Apr 16, 2025 am 12:19 AM

Linux的主要用途包括:1.服務器操作系統,2.嵌入式系統,3.桌面操作系統,4.開發和測試環境。 Linux在這些領域表現出色,提供了穩定性、安全性和高效的開發工具。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能