Ubuntu1604上使用Qt远程调试arm开发板

1.qt上添加开发板调试设备

 tools  →  options → devices → devices → add →  Generic Linux Device → start wizard

→ next

出现此界面表示添加设备成功!

2.配置交叉编译工具gcc g++

tools  →  options → Build&Run → Compilers

Manual → add → GCC → C

Name:  自己起个名字,便于辨识

Compiler path: 交叉编译工具路径

Manual → add → GCC → C++

3.配置交叉编译工具gdb

tools  →  options → Build&Run → Debuggers → add

Name: 自己起个名字,便于辨识

Path: gdb工具路径,没有可以安装一下: sudo apt-get install gdb-multiarch

4.配置工具插件

tools  →  options → Build&Run → Kits → add

Name: 自己起个名字,便于辨识

Deviece type: Generic Linux Device

Device:               选择 第一步中添加的的设备

Sysroot:     /home 填不填都行, 可以修改

Compiler:    C:        选择 第二步中添加的C编译工具

                            C++: 选择 第二步中添加的C++编译工具

Debugger:              选择第三步中添加的gdb

Qt version: None

5.配置工程CmakeLists.txt文件

这个配置文件可以不用,kit或者cmakelists.txt有一个配置好了就行

set(CMAKE_BUILD_TYPE "Debug")

set(AARCH_PATH "/opt/hisi-linux/x86-arm/aarch64-himix100-linux/bin")

set(CMAKE_C_COMPILER "${AARCH_PATH}/aarch64-himix100-linux-gcc")

set(CMAKE_CXX_COMPILER "${AARCH_PATH}/aarch64-himix100-linux-g++")

SET(EXECUTABLE_OUTPUT_PATH "${PROJECT_BINARY_DIR}/ZS207/test") //build的路径
SET(LIBRARY_OUTPUT_PATH "${PROJECT_BINARY_DIR}/ZS207/test")

LINK_DIRECTORIES("${PROJECT_BINARY_DIR}/ZS207/test")

file(COPY "${PROJECT_BINARY_DIR}/ZS207/test/" DESTINATION "${PROJECT_SOURCE_DIR}/bin")

Run configuration: 选择远程的设备,不要选择本机

Remote Directory: 基础路径为远程开发板上的~(/home/nvidia/)路径, 所以此处../bin实际为/home/nvidia/../bin(/home/bin),这个路径可以配置,本地是基于build的路径为基础路径,所以/xx/prj/build == /home/xx.

SET(EXECUTABLE_OUTPUT_PATH "${PROJECT_BINARY_DIR}/ZS207/test") //build的路径
SET(LIBRARY_OUTPUT_PATH "${PROJECT_BINARY_DIR}/ZS207/test")

LINK_DIRECTORIES("${PROJECT_BINARY_DIR}/ZS207/test")

file(COPY "${PROJECT_BINARY_DIR}/ZS207/test/" DESTINATION "${PROJECT_SOURCE_DIR}/bin")

这样设置以后为:

Local File Path                              Remote Directory

/home/sx/worksoft/ZS207/ZS207DDS/build/ZS207/test            ZS207/test(/home/nvidia/ZS207/test)

Run Environment: 设置的开发板上的环境变量.手动添加生成的库所在的路径的环境变量LD_LIBRARY_PATH

然后F5调试debug运行即可,此调试会现将生成的文件拷贝到远程开发板上,然后运行。

此调试只能调试源码编译的可执行文件,无法调试中间生成的依赖库,如需调试动态库请按步骤6设置。

6.调试动态库设置

tools  →  options → Debugger → General → 勾上 Set breakpoints using a full absolute path

tools  →  options → Debugger → GDB →  Additional Startup Commands && Additional Attach Commands 添加: set solib-search-path  本机库所在目录

 例如: solib-search-path /home/sx/worksoft/ZS207/ZS207DDS/bin

  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用VS Code进行远程调试ARM开发板,首先需要确保本机已经安装了VS Code。然后,需要安装Remote Development插件。安装完成后,按照以下步骤进行配置和调试: 1. 配置开发板:确认你的ARM开发板已经配置好编译工具链和GDB服务器。 2. 连接远程主机:使用VS Code的Remote Development插件连接到远程主机。 3. 安装gdb:在远程主机上安装GDB调试器。 4. 配置VS Code:在本地机器上配置VS Code以与远程主机进行调试通信。 具体步骤如下: 1. 确保你的ARM开发板已经配置好编译工具链和GDB服务器。这样,你就可以在开发板上运行gdbserver命令,将开发板与本地机器建立调试连接。 2. 使用VS Code的插件市场安装Remote Development插件。 3. 打开VS Code并点击左侧的远程开发图标(类似于飞船的图标)。在弹出的菜单中选择"Remote-SSH: Connect to Host"。然后,在输入框中输入你的远程主机地址和凭据。 4. 连接到远程主机后,打开VS Code的终端,运行以下命令来安装gdb: ``` sudo apt-get install gdb ``` 5. 在VS Code的终端中,输入以下命令来启动gdbserver并与ARM开发板建立调试连接: ``` gdbserver 192.168.0.102:1234 ./your_program ``` 其中,192.168.0.102是你的远程主机的IP地址,1234是你指定的端口号,your_program是你要调试程序的路径。 6. 在本地机器上,打开VS Code的左侧侧边栏并选择调试视图(类似于虫子的图标)。点击配置按钮,在弹出的菜单中选择"Add Configuration"。 7. 在弹出的配置文件中,选择"Cpp Debug"作为调试器,并将其配置如下: ``` "configurations": [ { "name": "(gdb) Attach to remote", "type": "cppdbg", "request": "attach", "remoteMachine": "192.168.0.102", "remoteWorkspaceRoot": "/path/to/your/workspace", "remoteCwd": "/path/to/your/program", "program": "/path/to/your/program", "targetArchitecture": "arm", "gdbpath": "gdb" } ] ``` 请将"remoteMachine"、"remoteWorkspaceRoot"、"remoteCwd"、"program"和"gdbpath"字段替换为你的实际值。 8. 保存配置文件并退出。现在,你可以在VS Code中点击调试按钮来启动远程调试会话。 9. 在调试会话中,你可以设置断点、单步执行和观察变量值,就像在本地机器上调试一样。 总结一下,要在VS Code中进行远程调试ARM开发板,需要安装Remote Development插件、配置本地机器和远程主机的连接,并使用gdbserver建立调试连接。然后,在VS Code中配置调试器并启动调试会话。这样,你就可以像在本地机器上一样调试ARM开发板上的程序了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [VSCode 搭建 Arm 远程调试环境的步骤详解](https://download.csdn.net/download/weixin_38618094/13739897)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [使用vscode远程调试arm-linux开发板](https://blog.csdn.net/weixin_45829566/article/details/108925998)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值