评测开发板不得不用到调试工具,平时大家一般用到的集成开发环境(IDE)都自带调试功能。比如在编译过程中发现语法问题。还有编译通过了如果业务逻辑有问题的话就需要调试工具比如单步调试。或者用着最简单的printf函数输出结果。 但在Ubuntu环境下,如果你进行底层编程用不到QT这样的集成开发环境,只能用CC这样的编译命令的话,那我们必须学会一种叫GDB的调试工具。相信这个功能强大gdb可以帮助你解决很多问题。这里再简单介绍下什么是GDB,GDB,是 The GNU Project Debugger 的缩写,是 Linux 下功能全面的调试工具。GDB 支持断点、单步执行、打印变量、观察变量、查看寄存器、查看堆栈等调试手段。 下面是飞凌iMX6ULL开发的gdb使用过程评测。 首先在Ubuntu开发环境中设置环境变量,详细的命令如下。/opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi 然后,编译要调试的程序,我的是test1.c程序。命令如下: root@ubuntu:/home/forlinx/work# $CC -g test1.c -o test1 将生成后的test1通过u盘拷贝到开发板根目录下。 然后在设置开发板IP和端口号,将开发板IP和开发环境虚拟机IP设置在同一网段,用命令互ping通即可。这里要注意的一点是虚拟机**连接设置为桥接,不要用NAT。 接着在开发板启动gdb服务,命令如下: root@fl-imx6ull:/run/media/mmcblk1p1# gdbserver 192.168.0.232:3699 test1 在Ubuntu开发环境启动调试命令: root@ubuntu:/home/forlinx/work# arm-poky-linux-gnueabi-gdb ./test1 在调试终端显示PID和监听的端口号,如附件。 最后附上开发环境调试的过程,如附件通过调试命令能显示源码。由于时间关系,更多的调试就不分享了,如果大家在调试过程遇到问题,欢迎留言。 另外发现一个小现象,就是在启动开发登录后会随机出现一行信息,如附件。这个信息不影响使用,但是有时候输入指令时它会跳出来,相信这个很快就会更新,支持飞凌!
|