在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【從0開始創建AWTK應用程序】編譯應用到嵌入式Linux平臺運行

ZLG致遠電子 ? 2023-12-07 12:08 ? 次閱讀

AWTK是基于C語言開發的跨平臺GUI框架。本系列文章介紹如何從0開始創建AWTK應用程序,包括搭建開發調試環境、使用AWTK創建Hello工程并在模擬器上運行、將AWTK應用程序移植到其它平臺。

搭建Linux平臺交叉編譯環境

在上一篇文章我們介紹了使用AWTK開發簡單的應用并在PC上模擬運行,本篇文章就來介紹一下怎么讓應用程序運行在嵌入式Linux平臺上。

1. 準備交叉編譯環境

交叉編譯通常在PC的Ubuntu上進行,準備對應板子的交叉編譯工具鏈、AWTK SDK(awtk與awtk-linux-fb)、應用工程(應用需提前在AWTK Designer上打包資源)。SDK版本需要配套,否則會出現編譯不通過或運行異常問題,具體根據AWTK應用程序所依賴的SDK版本選擇,獲取SDK有三種方式:

  1. AWStudio安裝目錄下的Installer文件夾自帶的SDK;推薦
  2. 板子供應商提供的SDK,可能與應用依賴版本不兼容,需找供應商更新SDK;
  3. Github上最新版的SDK,要求應用使用最新版awtk開發,但最新版SDK未經測試,可能存在BUG。

第一種和第三種方式需要自行配置awtk_config.py,配置方法見下面小節;第二種供應商一般會配置好,或者有專門的配置教程可以參考。

將工具鏈、SDK和應用拷貝到Ubuntu以下路徑,SDK與應用需放在同一級目錄:

工具鏈:/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/
SDK與應用:
/home/user/
|-- awtk/
|-- awtk-linux-fb/
|--awtk-hello-demo/

2.配置交叉編譯工具鏈路徑

將交叉編譯工具解壓到Ubuntu環境內,接著打開awtk-linux-fb目錄的awtk_config.py,找到TOOLS_PREFIX參數配置工具鏈的路徑。配置tslib則需修改TSLIB_LIB_DIR與TSLIB_INC_DIR參數。# awtk_config.py
TSLIB_LIB_DIR='/opt/tslib/lib'
TSLIB_INC_DIR='/opt/tslib/include'
TOOLS_PREFIX='/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-'

配置設備可以到awtk-linux-fb/awtk-port/main_loop_linux.c修改,下圖分別對應著Framebuffer、觸摸屏、鍵盤和鼠標等設備配置。

我們可以通過"hexdump /dev/input/xx" 命令識別正確的觸摸或鼠標設備文件名。

394e3a26-94b6-11ee-9788-92fbcf53809c.png

圖1配置設備名稱

編譯打包并運行應用程序

1. 編譯awtk

在Ubuntu打開awtk-linux-fb目錄并輸入scons命令編譯awtk。

2. 編譯應用程序

同樣在awtk-linux-fb目錄輸入命令scons APP=../awtk-hello-demo,“APP=”后面為應用程序相對路徑。

提示“scons: done building targets.”代表編譯成功,若編譯失敗考慮SDK版本不配套或awtk_config.py中工具鏈路徑設置不正確等情況。

3. 發布并運行應用程序

在提示編譯成功之后,還需要執行下面命令生成realease文件夾。

./release.sh ../awtk-hello-demo/res demo

將release文件夾通過scp或其它工具將其拷貝到板子上,并在板子上運行命令:./release/bin/demo若提示can't load library 'xxx.so',需添加動態庫查找路徑,在板子控制臺輸入export LD_LIBRARY_PATH=so所在文件夾的路徑,再運行應用即可。

新版AWTK SDK配置與編譯方式

若使用Github最新版的SDK,可以使用另外一種配置與編譯方式,這種方式可以避免了在一堆配置里面尋找配置項的麻煩。

1. 配置交叉編譯工具鏈路徑

在awtk-linux-fb目錄創建名為awtk_config_define.py的文件,將TOOLS_PREFIX等參數及對應的路徑寫入該文件中。awtk_config_define.py還可以由腳本生成并支持修改其它參數,具體可以看最新版awtk-linux-fb的README文檔。

2. 編譯awtk

在Ubuntu打開awtk-linux-fb目錄并輸入scons命令編譯awtk。

3. 編譯與發布應用

去到應用程序目錄下,使用scons LINUX_FB=true命令編譯應用。接著輸入python ./scripts/release.py生成release文件夾。

將release文件夾通過scp或其它工具將其拷貝到板子上,并在板子上運行命令:

./release/bin/demo

鏈接錯誤解決思路

若在編譯過程中遇到‘undefined symbol’錯誤提示,需檢查awtk_config.py腳本OS_LIBS是否添加鏈接庫,OS_CPPPATHOS_LIBPATH是否包含頭文件與庫文件搜索路徑。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5082

    文章

    19126

    瀏覽量

    305198
  • Linux
    +關注

    關注

    87

    文章

    11304

    瀏覽量

    209498
  • awtk
    +關注

    關注

    0

    文章

    44

    瀏覽量

    234
收藏 人收藏

    評論

    相關推薦

    AWTK的特點

    能支持Linux、MacOS、iOS、Android操作系統,還能支持Windows操作系統、WEB以及各種小程序,可以說是一個全能的嵌入式GUI引擎。AWTK的跨
    發表于 11-04 07:57

    嵌入式Linux應用程序開發標準教程

    嵌入式Linux應用程序開發標準教程(第2版)》主要分為3個部分,包括Linux基礎、搭建嵌入式Lin
    發表于 09-29 17:02 ?0次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b><b class='flag-5'>應用程序</b>開發標準教程

    基于嵌入式Linux應用程序開發詳解

    基于嵌入式Linux應用程序開發詳解
    發表于 10-25 14:17 ?12次下載
    基于<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b><b class='flag-5'>應用程序</b>開發詳解

    嵌入式Linux應用程序例程

    嵌入式Linux應用程序例程(arm嵌入式開發步驟)-嵌入式Linux
    發表于 07-30 13:23 ?16次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b><b class='flag-5'>應用程序</b>例程

    嵌入式linux編譯 ko,嵌入式linux:編譯linux驅動模塊

    嵌入式系統應用中,嵌入式linux是非常重要的一個方面,而linux驅動編譯又是嵌入式
    發表于 11-01 16:31 ?9次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b><b class='flag-5'>編譯</b> ko,<b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b>:<b class='flag-5'>編譯</b><b class='flag-5'>linux</b>驅動模塊

    嵌入式linux一個簡單的hello程序編譯運行示例

    嵌入式linux一個簡單的hello程序編譯運行示例由于嵌入式的cpu速度比較慢,所以
    發表于 11-01 16:56 ?9次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b>一個簡單的hello<b class='flag-5'>程序</b><b class='flag-5'>編譯</b>及<b class='flag-5'>運行</b>示例

    《從實踐中學嵌入式Linux應用程序開發》pdf完整版資源分享

    《從實踐中學嵌入式Linux應用程序開發》內容簡介: 《從實踐中學嵌入式linux應用程序開發》
    發表于 11-01 17:07 ?0次下載
    《從實踐中學<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b><b class='flag-5'>應用程序</b>開發》pdf完整版資源分享

    嵌入式Linux應用程序開發-(1)第一個嵌入式QT應用程序

    開發環境,請參考以下帖子: 嵌入式Linux開發環境搭建-(5)安裝和配置Qt Creator開發工具目標:了解 Qt Creator 如何構建和編譯工程,如何把應用程序...
    發表于 11-01 17:21 ?16次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b><b class='flag-5'>應用程序</b>開發-(1)第一個<b class='flag-5'>嵌入式</b>QT<b class='flag-5'>應用程序</b>

    如何用AWTK和AWPLC快速開發嵌入式應用程序

    AWPLC 是 ZLG 自主研發的 PLC 系統(兼容 IEC61131-3),本文用一個簡單的溫度控制系統,來演示如何用 AWTK 和 AWPLC 快速開發嵌入式應用程序
    的頭像 發表于 09-26 11:46 ?1402次閱讀

    【產品應用】用 AWTK 和 AWPLC 快速開發嵌入式應用程序 (3)- 定時器

    AWPLC是ZLG自主研發的PLC系統(兼容IEC61131-3),本文用一個用定時器實現的走馬燈程序,來演示如何用AWTK和AWPLC快速開發嵌入式應用程序。背景
    的頭像 發表于 11-02 10:02 ?747次閱讀
    【產品應用】用 <b class='flag-5'>AWTK</b> 和 AWPLC 快速開發<b class='flag-5'>嵌入式</b><b class='flag-5'>應用程序</b> (3)- 定時器

    0開始創建AWTK應用程序】開發及調試環境搭建

    AWTK是基于C語言開發的跨平臺GUI框架。本系列文章介紹如何0開始創建AWTK
    的頭像 發表于 11-11 10:00 ?681次閱讀
    【<b class='flag-5'>從</b><b class='flag-5'>0</b><b class='flag-5'>開始創建</b><b class='flag-5'>AWTK</b><b class='flag-5'>應用程序</b>】開發及調試環境搭建

    0開始創建AWTK應用程序創建應用程序并在模擬器運行

    AWTK是基于C語言開發的跨平臺GUI框架。本系列文章介紹如何0開始創建AWTK
    的頭像 發表于 12-01 08:24 ?518次閱讀
    【<b class='flag-5'>從</b><b class='flag-5'>0</b><b class='flag-5'>開始創建</b><b class='flag-5'>AWTK</b><b class='flag-5'>應用程序</b>】<b class='flag-5'>創建</b><b class='flag-5'>應用程序</b>并在模擬器<b class='flag-5'>運行</b>

    AWTK開源智能串口屏方案】HMI端程序移植編譯運行

    本篇文章介紹一下AWTK開源智能串口屏方案的串口屏端(即HMI端)的編譯運行步驟,并介紹如何將HMI端移植到Linux或STM32平臺或RT
    的頭像 發表于 01-18 08:24 ?932次閱讀
    【<b class='flag-5'>AWTK</b>開源智能串口屏方案】HMI端<b class='flag-5'>程序</b>移植<b class='flag-5'>編譯</b>及<b class='flag-5'>運行</b>

    AWTK開源智能串口屏方案】MCU SDK使用與編譯運行

    本篇文章將介紹AWTK-HMI中的MCU端開發方法,包括MCUSDK常用API的說明、使用流程及如何編譯Linux和STM32平臺。引言:AWTK
    的頭像 發表于 02-19 12:11 ?1214次閱讀
    【<b class='flag-5'>AWTK</b>開源智能串口屏方案】MCU SDK使用與<b class='flag-5'>編譯</b><b class='flag-5'>運行</b>

    0開始創建AWTK應用程序編譯應用到RTOS平臺

    AWTK是基于C語言開發的跨平臺GUI框架。本系列文章介紹如何0開始創建AWTK
    的頭像 發表于 03-21 08:23 ?618次閱讀
    【<b class='flag-5'>從</b><b class='flag-5'>0</b><b class='flag-5'>開始創建</b><b class='flag-5'>AWTK</b><b class='flag-5'>應用程序</b>】<b class='flag-5'>編譯</b><b class='flag-5'>應用到</b>RTOS<b class='flag-5'>平臺</b>
    主站蜘蛛池模板: 精品视频卡1卡2卡3 精品视频免费看 | 国产三级精品在线 | 国产人成午夜免费噼啪视频 | 色婷婷综合激情视频免费看 | 妖精视频一区二区三区 | aa小视频| 亚洲情网| 成人自拍视频 | 久草在线资源网 | 精品你懂的 | 国产巨大bbbb俄罗斯 | 未成人禁止视频高清在线观看 | v视界影院最新地址 | 午夜在线观看免费 | 欧美天天性 | 中文字幕一区2区3区 | 免费在线看视频 | 一区二区不卡免费视频 | 女主播扒开内衣让粉丝看个够 | 久久aa毛片免费播放嗯啊 | 视频一区中文字幕 | 午夜影院在线观看视频 | 免费看性| 黄 色 毛片免费 | 男人女人真曰批视频播放 | 日韩一级黄 | 天天干精品 | 日本亚洲高清乱码中文在线观看 | 91九色成人 | 四虎影免看黄 | 天天精品 | 免费黄色的视频 | 84pao强力永久免费高清 | 国产网红主播精品福利大秀专区 | 亚洲三级理论 | 天天舔天天射 | 欧美色图中文字幕 | 久久青草免费免费91线频观看 | 色综合激情 | 国内91视频 | 黄 色 片免费观看 |