使用树莓派构建嵌入式C++调试环境

网友投稿 823 2022-09-06

使用树莓派构建嵌入式C++调试环境

使用树莓派构建嵌入式C++调试环境

本文以使用树莓派4b为例说明构建嵌入式C++执行环境。树莓派本身可以到各大购物网站直接购买,价格大概300-500元不等。之所有选择树莓派是因为它的系统比较完善,容易上手。但是需要实现说明的是本文说明的大部分内容并不仅限于树莓派。

准备树莓派

-镜像文件

打开树莓派官方网站的系统镜像-网页

raspi-config

远程链接树莓派

进入Ubuntu主机的终端画面,输入以下命令(地址初始化树莓派时记录的Ip地址):

ssh pi@192.168.3.233

第一次登陆会出现密钥,安全相关的提示,直接接受就好。接下来输入密码之后,看到以下画面就表示登录成功。从此以后的开发,树莓派一侧的所有操作都通过这个终端窗口进行,就不再需要单独的外设了。

除了Ubuntu中使用SSH命令之外,Window下也可以使用Putty等连接树莓派,方法大同小异。

准备C++执行和调试环境

安装NFS服务(Ubuntu开发主机)

在Ubuntu主机上打开终端窗口,输入以下命令以安装NFS服务。这个服务安装完成之后,可以从树莓派上访问通过NFS共享的目录。

sudo apt get install nfs-kernel-server

输入以下命令,编辑NFS配置文件。

sudo vi /etc/exports

在文件最后增加以下内容。其目的是公开/home/xwg/Raspberry中的内容并赋予最大权限。具体可以根据开发环境的位置自行决定。

/home/xwg/RaspberryPi *(rw,sync,no_root_squash)

配置文件修改、保存完成之后,在终端窗口中输入以下命令启动NFS服务。

sudo /etc/init.d/nfs-kernel-server start

​​挂接开发目录(树莓派)​​

启动树莓派SSH客户端,输入以下命令挂接Ubuntu主机分享的NFS目录。

mount -t nfs 192.168.3.202:/home/xwg/EasyARM /mnt -o nolock

命令中IP地址需要替换为Utuntu主机的地址,目录需要和前面分享的目录相同。安装成功之后,可以进入/mnt目录,如果看到的Ubuntu主机分享的内容,就意味在NFS目录挂接成功了。使用这个目录,可以直接访问Ubuntu主机交叉编译的结果,而不必每次都拷贝文件。

找到前一篇文章的创建的arm_cpp项目,进入Debug目录,输入以下命令:

./arm_cpp

终端中应该出现如下的内容:

Hello GCC/G++ Compiler!

远程调试

安装GdbServer

在树莓派终端窗口中输入以下命令安装gdbserver.

sudo apt-get install gdbserver

输入以下命令确认安装结果,如果能过或者正常的版本信息,则表示安装成功。

gdbserver --version

安装gdb-multiarch

在Ubuntu主机的终端窗口中输入以下命令安装多平台版本的gdb.

sudo apt-get install gdb-multiarch

安装完成后通过以下命令确认安装结果:

gdb-multiarch -v

参考信息:

:10000 arm_cpp

莓派终端表示如下:

在Ubuntu主机的终端窗口中输入如下命令,启动gdb-multiarch。

gdb-multiarch

画面表示如下:

输入以下命令链接树莓派侧的GdbServer:

target remote 192.168.3.233:10000

链接成功时,Ubuntu主机的终端画面表示如下:

树莓派侧的终端表示如下:

在gdb画面中输入c命令执行程序。可以在树莓派终端中看到如下输出:

至此树莓派远程调试环境安装完成!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:2021年终总结——适应改变,成为更好的自己
下一篇:公用表表达式(Common Table Expressions)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~