嵌入式程序调试与opencv图像库

本文详细介绍了如何在Ubuntu上使用GDB进行程序调试,包括设置断点、查看变量值等基本操作。同时,文章还涵盖了OpenCV的安装、配置和使用,包括读取照片、打开摄像头、处理视频以及图像采集和压缩成视频的步骤,强调了在过程中可能遇到的问题及解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一 . Ubuntu上的GDB

GDB : GNU Debugger,是GNU工程为GNU操作系统开发的 调试器,但它的使用不局限于GNU操作系统, GDB可以运行 在UNIX、Linux甚至Microsoft Windows

1.gdb调试举例

创建gdb.c(代码如下)

#include <stdio.h> 
void ShowRevertNum(int iNum)
 {
   while (iNum > 10)
   {
      printf("%d", iNum % 10);              
      iNum = iNum / 10;
   }
    printf("%d\n", iNum);
   }
   int main(void) 
   {
             int iNum;   
             printf("Please input a number :");      
             scanf("%d", &iNum);  
             printf("After revert : ");     
             ShowRevertNum(iNum); 
   }

用gdb调试
gcc -o test -g gdb.c
gdb test
在这里插入图片描述
在这里插入图片描述

2.认识gdb命令

file装入想要调试的可执行文件。
kill 终止正在调试的程序。
list 列出产生执行文件的源代码的一部分。
next 执行一行源代码但不进入函数内部。
step 执行一行源代码而且进入函数内部。
run 执行当前被调试的程序。
c 继续运行程序。
quit 终止gdb。 • watch 使你能监视一个变量的值而不管它何时被改变。
backtrace 栈跟踪,查出代码被谁调用。
print 查看变量的值。
make 使你能不退出gdb就可以重新产生可执行文件。
shell 使你能不离开gdb就执行UNIX shell命令。
whatis 显示变量或函数类型。
break 在代码里设断点,这将使程序执行到这里时被 挂起。
info break显示当前断点清单,包括到达断点处的次数等。
info files 显示被调试文件的详细信息。
info func显示所有的函数名称。
info local 显示当函数中的局部变量信息。
info prog 显示被调试程序的执行状态。
delete [n] 删除第n个断点。
disable[n] 关闭第n个断点。
enable[n] 开启第n个断点。
ptype显示结构定义。
set variable 设置变量的值。
call name(args)调用并执行名为name,参数为args的函数。
Finish 终止当前函数并输出返回值。
eturn value停止当前函数并返回value给调用者。

二 .opencv的操作

1.opencv的安装

在官网下载opencv3.4.10
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值