国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

DR1平臺Linux應用開發指南:含GDB調試、Python及MQTT實戰

Tronlong創龍科技 ? 來源:Tronlong創龍科技 ? 作者:Tronlong創龍科技 ? 2026-01-05 16:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前 言

本文為創龍科技編寫的Linux應用開發的指引文檔,提供Linux應用開發環境、開發流程等說明,以及對平臺關鍵技術及其支持情況進行簡要介紹。同時本文將對部分通用開發技術進行說明,其它應用開發內容請按文中說明選擇對應參考文檔進行閱讀。

當前應用開發支持情況如下表所示。

wKgZO2lbdamAQEqRAAAW4Efnnak361.png

在完成開發環境搭建后,可參考本文的“Linux常用開發案例”章節熟悉基本的應用開發流程,然后可參考如下文檔進行產品應用開發。

(1)圖形界面開發:暫無參考;

(2)視頻圖像處理開發:暫無參考。

開發環境

Windows開發環境:Windows10 64bit

Linux開發環境:VMware16.2.5、Ubuntu22.04.4 64bit

LinuxSDK開發包:LinuxSDK-[版本號](基于SDK_2025.1)

交叉編譯工具鏈:

應用開發:gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu

U-Boot、內核開發:gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu

評估板系統版本:U-Boot-2021.01、Linux-6.1.111、Buildroot-2022.02

備注:本文基于8GByteeMMC、1GByteDDR配置核心板進行演示。

術語表

為便于閱讀,下表對文檔出現的關鍵術語進行解釋;對于廣泛認同釋義的術語,在此不做注釋。

wKgZPGlbdbmAbiiSAAA1gnmDsns568.png

注意事項

(1)無特殊說明情況下,默認使用USB TO UART1接口作為調試串口,使用Linux系統啟動卡啟動系統,通過路由器與PC機進行網絡連接。請根據評估底板絲印將啟動方式選擇撥碼開關撥為011(1~3),此檔位為Micro SD啟動模式。

(2)本文檔涉及的開發案例位于產品資料“4-軟件資料Demo”路徑下的base-demos目錄。base-demos目錄存放Linux常用開發案例,案例bin目錄存放可執行文件,案例src目錄存放源碼。

1開發環境搭建說明

1.1LinuxSDK使用說明

請參考《開發環境搭建》的LinuxSDK安裝章節正確解壓LinuxSDK并安裝相關依賴軟件,然后參考《Linux系統開發手冊》的LinuxSDK配置與編譯章節正確編譯LinuxSDK,生成支持應用開發的交叉編譯工具鏈。

編譯完LinuxSDK后,請執行如下命令,完成Linux應用開發的環境變量配置,即可進行Linux應用開發。

Host# export PATH=/home/tronlong/DR1/SDK_2025.1/device/output/anlogic_dr1m90/buildroot/host/bin/:$PATH

wKgZPGlbdhWAJI-MAABNALVCKf4451.png圖 1

1.2工具鏈使用說明

通過export命令完成環境變量配置后,請執行如下命令,查看編譯工具鏈版本。

Host# aarch64-linux-gnu-gcc -v

wKgZO2lbdj6Ad7ahAAHO0dHHpd0440.png圖 2

2GDB調試說明

GDB為GNU推出的經典命令行調試工具,在Linux系統下廣泛使用。它功能強大,能讓開發者單步執行程序、逐過程或逐語句調試,自由跳入或跳出函數,還能按條件設置斷點,實時查看變量值,精準定位程序問題。

GDB支持多種語言,包括匯編、C/C++、D、Fortran、GO、Objective-C、OpenCL等。此外,它有遠程調試模式,在嵌入式系統調試中優勢明顯。借助TCP/IP協議及專有通信協議,可讓調試程序的主機與運行程序的目標機跨設備協作,高效完成調試任務。

2.1調試環境搭建

請先參考產品資料用戶手冊目錄下的《開發環境搭建》和《Linux系統開發手冊》安裝、編譯LinuxSDK。

GDB調試工具壓縮包gdb-10.2.tar.xz位于LinuxSDK源碼目錄"buildroot/dl/gdb/"下。

wKgZO2lbeCqAWNzgAAAzssZTMYM870.png圖?3

在DR1工作目錄下執行如下命令,創建gdb-tool目錄用于存放GDB調試工具壓縮包,將GDB調試工具包拷貝至該目錄下并解壓。

Host# mkdir gdb-tool

Host# cdgdb-tool

Host# cp /home/tronlong/DR1/SDK_2025.1/buildroot/dl/gdb/gdb-10.2.tar.xz /home/tronlong/DR1/gdb-tool/

Host# tar -xvf gdb-10.2.tar.xz

wKgZO2lbeDWADui3AAB3jA7ageY966.png圖 4

wKgZPGlbeDWAU1zLAABM8R5XziM496.png圖 5

執行如下命令,配置交叉編譯工具鏈環境變量,并新建install目錄用于存放編譯生成的GDB調試工具。

Host# export PATH=/home/tronlong/test/sdk/SDK_2025.1/device/output/anlogic_dr1m90/buildroot/host/bin:$PATH

Host# mkdir install

wKgZPGlbeEWAZJbvAACFA_uhan4902.png圖 6

執行如下命令,進入GDB調試工具包目錄,配置GDB調試工具。

Host# cd gdb-10.2

Host# ./configure --target=aarch64-linux-gnu --prefix=/home/tronlong/DR1/gdb-tool/install/

備注:--target表示GDB調試工具名稱前綴,選擇aarch64-linux-gnu;--prefix表示存放目錄,選擇新建的install目錄。

wKgZO2lbeFCADfDYAADU0ez-OZ4675.png圖 7

wKgZPGlbeFCAaPqLAADdsJhM2WA198.png圖?8

執行如下命令進行編譯。

Host# make

wKgZO2lbeGOAXo05AAFFac7Wsq8526.png圖?9

wKgZPGlbeGOALIffAADbhWsjLfs788.png圖?10

執行如下命令安裝GDB調試工具,將會在”install/bin”目錄下生成GDB調試工具。

Host# make install

wKgZPGlbeHOADOd_AAEztAZxxLo213.png圖?11

wKgZO2lbeHOAZBd_AAEgUZOH74Y513.png圖?12

wKgZPGlbeHSAC_rOAAA4w05g_WA152.png圖 13

2.2演示程序創建與編譯

在gdb-tool目錄下執行如下命令,新建一個GDB調試演示程序。

Host# vitest.c

Host# cat test.c

wKgZO2lbeIyAU9ATAAB4CrkjAYs836.png圖 14

演示程序代碼如下:

#include

void show() {

printf("shown");

}

int main(int argc, char *argv[])

{

int arr[4] = {1, 2, 3, 4};

int i = 0;

for (i = 0; i < 4; i++) {

printf("arr[%d]: %dn", i, arr[i]);

}

show();

return 0;

}

執行如下命令,進行程序編譯,編譯完成將會生成test可執行程序。

備注:編譯時需添加-g參數,生成的可執行文件才帶有調試信息。

Host# aarch64-linux-gnu-gcc -g test.c -o test

wKgZO2lbeJaAFdZVAABXNTn-oNg853.png圖?15

評估板與PC機連接至同一個路由器后進行上電,將編譯后的可執行文件test拷貝至評估板文件系統任意目錄下。

Target# lstest

wKgZPGlbeJ6AabRDAAAE9Sd8XIs661.png圖?16

2.3調試程序運行

執行如下命令,查看虛擬機的IP地址。

Host# ifconfig

wKgZO2lbeKWAYPq8AAGA-eA9ibQ319.png圖 17

在評估板文件系統test文件所在路徑下,執行如下命令運行gdbserver程序,開啟監聽。

備注:192.168.13.81為虛擬機的IP地址;1234為連接的端口號(自行設置);test為將要進行調試的程序。

Target# gdbserver 192.168.13.81:1234 test

wKgZPGlbeLuACGQFAAASAg8upAo945.png圖?18

在虛擬機test文件所在路徑下,執行如下命令使用GDB調試工具進行程序調試。

Host# ./install/bin/aarch64-linux-gnu-gdb test

wKgZO2lbeMKAJf9-AAD_Keh8s2Q863.png圖?19

執行如下命令,連接評估板。192.168.13.47為評估板的IP地址,請以實際情況為準。

(gdb) target remote 192.168.13.47:1234

wKgZPGlbeMmAb8KJAACmvT_t9hI228.png圖?20

同時,串口調試終端顯示連接成功的相關信息。

wKgZO2lbeNCAFUjHAAAWn7y7_R4342.png圖?21

2.4 程序調試

本章節主要演示GDB調試的幾個常用命令的使用方法。

2.4.1 list命令

用于列出源碼,簡寫:l。

wKgZO2lbeNaADCH8AABiyg4_q08562.png圖 22

2.4.2 break命令

用于設置斷點,簡寫:b。

分別在main函數和第10行設置斷點。

wKgZPGlbeN2AEO-sAAA3M-GiKoQ056.png圖 23

2.4.3 info breakpoints命令

用于顯示斷點的狀態,簡寫:infob。

wKgZPGlbeRCACgstAABEcRxJziM268.png圖 24

2.4.4 continue命令

用于恢復程序執行,簡寫:c。此命令使GDB恢復程序的執行,直至斷點觸發或程序結束。

wKgZPGlbeRyAOaF_AAB354HpSeM658.png圖 25

以上調試過程在第二個斷點中,每輸入一次c命令,將會依次打印arr[]數組的元素值,然后程序執行結束。同時,串口調試終端打印相關信息。

wKgZO2lberKAJoJOAAAioBOYThc227.png圖 26

2.4.5 print命令

用于打印變量或者變量地址,簡寫:p。

設置斷點后,可依次打印當前變量i的值。

wKgZPGlberuAAY8-AAHHOj5MzCM173.png圖 27

以上調試過程在每處斷點中,使用print命令打印變量i的值。同時,串口調試終端打印相關信息。

wKgZPGlbesSAQB2mAAAiNHXN9dM500.png圖 28

2.4.6 quit命令

退出GDB模式,簡寫:q。當程序調試完成后,使用quit命令退出GDB調試。

wKgZO2lbesuAQ2NSAAA8favW3JQ895.png圖 29

同時,串口調試終端打印相關信息。

wKgZO2lbetOABCdKAAAifo_tGeg469.png圖 30

由于篇幅過長等原因,部分內容均不逐一展示,如需獲取完整版詳細資料,請關注創龍科技微信公眾號或官網,或者評論區留言,感謝您的支持!

審核編輯 黃宇

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

    關注

    88

    文章

    11758

    瀏覽量

    219009
  • python
    +關注

    關注

    57

    文章

    4876

    瀏覽量

    90025
  • MQTT
    +關注

    關注

    5

    文章

    733

    瀏覽量

    25068
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于安路DR1M90 FPSoC的Linux系統全流程開發指南(4)

    ,以及 CPU/DDR 管理,附帶 TFTP+NFS 快速調試方案。實操命令與配置步驟,適配特定硬件與開發環境,幫助開發者完成系統鏡像生成、替換與
    的頭像 發表于 11-30 15:46 ?2181次閱讀
    基于安路<b class='flag-5'>DR1</b>M90 FPSoC的<b class='flag-5'>Linux</b>系統全流程<b class='flag-5'>開發指南</b>(4)

    使用GDB調試Linux應用程序

    本篇講解使用GDB調試Linux應用程序,以下以 `hellowld.c` 為例介紹 GDB調試入門。
    發表于 06-27 15:48 ?826次閱讀

    DR1 系列核心板 PS+PL 異構多核實戰案例手冊(二)

    本文為創龍科技DR1 系列評估板 PS+PL 異構多核開發指南,涵蓋 9 類核心案例與關鍵技術實現。核心內容包括 AXI 總線與 PS_PLIO 兩種通信方式,涉及 GPIO 控制、串口 / CAN
    的頭像 發表于 01-14 17:23 ?4602次閱讀
    <b class='flag-5'>DR1</b> 系列核心板 PS+PL 異構多核<b class='flag-5'>實戰</b>案例手冊(二)

    Tiny6410 Linux開發指南詳解

    ............................................................................................................................- 1 - Tiny6410 L
    發表于 07-08 17:12 ?210次下載
    Tiny6410 <b class='flag-5'>Linux</b><b class='flag-5'>開發指南</b>詳解

    Linux平臺下Mini210S裸機程序開發指南

    Linux平臺下Mini210S裸機程序開發指南
    發表于 10-29 10:52 ?59次下載
    <b class='flag-5'>Linux</b>的<b class='flag-5'>平臺</b>下Mini210S裸機程序<b class='flag-5'>開發指南</b>

    C#上位機實戰開發指南

    C#上位機實戰開發指南
    發表于 11-22 19:25 ?0次下載

    Tina Linux配置開發指南

    Tina Linux配置開發指南
    的頭像 發表于 03-02 15:28 ?2w次閱讀
    Tina <b class='flag-5'>Linux</b>配置<b class='flag-5'>開發指南</b>

    Linux NOR開發指南

    Linux NOR開發指南
    的頭像 發表于 03-06 09:55 ?2280次閱讀
    <b class='flag-5'>Linux</b> NOR<b class='flag-5'>開發指南</b>

    如何使用linuxgdb調試python程序

    如何使用linuxgdb調試python程序? 在Linux下,可以使用GDB(GNU
    的頭像 發表于 01-31 10:41 ?3940次閱讀

    基于安路DR1M90 FPSoC 的Linux 系統全流程開發指南1

    ,以及 CPU/DDR 管理,附帶 TFTP+NFS 快速調試方案。實操命令與配置步驟,適配特定硬件與開發環境,幫助開發者完成系統鏡像生成、替換與
    的頭像 發表于 11-25 14:09 ?384次閱讀
    基于安路<b class='flag-5'>DR1</b>M90 FPSoC 的<b class='flag-5'>Linux</b> 系統全流程<b class='flag-5'>開發指南</b>(<b class='flag-5'>1</b>)

    基于安路DR1M90 FPSoC 的Linux 系統全流程開發指南(3)

    ,以及 CPU/DDR 管理,附帶 TFTP+NFS 快速調試方案。實操命令與配置步驟,適配特定硬件與開發環境,幫助開發者完成系統鏡像生成、替換與
    的頭像 發表于 11-26 17:01 ?318次閱讀
    基于安路<b class='flag-5'>DR1</b>M90 FPSoC 的<b class='flag-5'>Linux</b> 系統全流程<b class='flag-5'>開發指南</b>(3)

    DR1M90 評估板 TD-FD 工程與 Linux 多場景應用開發指南

    設備樹編譯,FD 工程的 HPF 文件導入、裸機 / FreeRTOS 工程創建,以及通過 JTAG 下載器、PS 端的程序加載與調試。文檔基于 Windows10 與 DR1 專用開發工具,提供完整
    的頭像 發表于 01-07 11:37 ?585次閱讀
    <b class='flag-5'>DR1</b>M90 評估板 TD-FD 工程與 <b class='flag-5'>Linux</b> 多場景應用<b class='flag-5'>開發指南</b>

    DR1 系列核心板 PS+PL 異構多核實戰案例手冊(一)

    本文為創龍科技DR1 系列評估板 PS+PL 異構多核開發指南,涵蓋 9 類核心案例與關鍵技術實現。核心內容包括 AXI 總線與 PS_PLIO 兩種通信方式,涉及 GPIO 控制、串口 / CAN
    的頭像 發表于 01-14 15:37 ?164次閱讀
    <b class='flag-5'>DR1</b> 系列核心板 PS+PL 異構多核<b class='flag-5'>實戰</b>案例手冊(一)

    DR1 系列評估板 PS 端裸機與 FreeRTOS 開發案例手冊

    本文為創龍科技DR1 系列評估板 PS 端裸機與 FreeRTOS 開發指南,涵蓋三大核心案例與雙開發模式實現。核心內容包括 LED 定時閃爍、按鍵控制 LED 亮滅、串口數據回顯功能,詳細說明工程
    的頭像 發表于 01-19 17:12 ?147次閱讀
    <b class='flag-5'>DR1</b> 系列評估板 PS 端裸機與 FreeRTOS <b class='flag-5'>開發</b>案例手冊

    RK3562 單板機 Linux 應用開發實戰手冊:LED/CAN/TCP/UART 案例與 Python 開發(二)

    本文為創龍科技RK3562 單板機應用開發指南,核心包含交叉編譯工具鏈部署、GDB 遠程調試,以及 LED、CAN、TCP/UDP、MQTT實戰
    的頭像 發表于 02-25 11:35 ?290次閱讀
    RK3562 單板機 <b class='flag-5'>Linux</b> 應用<b class='flag-5'>開發</b><b class='flag-5'>實戰</b>手冊:LED/CAN/TCP/UART 案例與 <b class='flag-5'>Python</b> <b class='flag-5'>開發</b>(二)