社区
Linux/Unix社区
帖子详情
怎样让shell获取gcc调试信息
有时我感觉真的好迷茫
2009-05-23 07:04:28
我想在shell中调用gcc来编译一个c文件,怎样可以在shell中获取调试信息来判断编译是否成功。假如编译失败,怎样才能获得源程序出错的行号(位置)。进而可以通过人工修改的方式修改源程序。
请大家帮帮忙,给点思路,谢谢!
...全文
344
9
打赏
收藏
怎样让shell获取gcc调试信息
我想在shell中调用gcc来编译一个c文件,怎样可以在shell中获取调试信息来判断编译是否成功。假如编译失败,怎样才能获得源程序出错的行号(位置)。进而可以通过人工修改的方式修改源程序。 请大家帮帮忙,给点思路,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
brookmill
2009-05-23
打赏
举报
回复
[Quote=引用 7 楼 xuexi_123 的回复:]
brookmill 能否再请教一下,怎样在一个文件的指定行追加一条语句?谢谢。
[/Quote]
这个大概要用sed或者awk之类的,具体用法我就不会了,只能看手册、google
brookmill
2009-05-23
打赏
举报
回复
[Quote=引用 4 楼 xuexi_123 的回复:]
那么怎样才能将出错的行号保存到一个变量中呢,我想用变量保存行号!麻烦了!
[/Quote]
export abc=`gcc test.c 2>&1 | grep error | cut -d ":" -f 2`
echo $abc
结果未必是你想要的,可能还得加些循环之类的
有时我感觉真的好迷茫
2009-05-23
打赏
举报
回复
brookmill 能否再请教一下,怎样在一个文件的指定行追加一条语句?谢谢。
brookmill
2009-05-23
打赏
举报
回复
[Quote=引用 5 楼 Dansley 的回复:]
楼上高手,我总是不太能记住这些命令
[/Quote]
我不是高手,我也记不住。除非天天用,不可能都记住的
能做到的是:知道有某个命令差不多能实现某个功能,具体的用法就man,或者google
Dansley
2009-05-23
打赏
举报
回复
楼上高手,我总是不太能记住这些命令
有时我感觉真的好迷茫
2009-05-23
打赏
举报
回复
那么怎样才能将出错的行号保存到一个变量中呢,我想用变量保存行号!麻烦了!
brookmill
2009-05-23
打赏
举报
回复
警告也应该看看
gcc test.c 2>&1 | grep -E 'warning|error' | cut -d ":" -f 2-3
brookmill
2009-05-23
打赏
举报
回复
源程序出错的行号
可以考虑把gcc的输出重定向给cut处理,比如
gcc test.c 2>&1 | grep error | cut -d ":" -f 2
brookmill
2009-05-23
打赏
举报
回复
用$?来查看gcc的返回值,返回0就是编译成功
实验一 Linux 简介,
Shell
基本命令,vim 编辑 器、
gcc
编译器 和 gdb 调试器的基本使用
调试信息
包含你程序里的每个变量的类型和在可执行文件里的地址映射以及源代码的行号。这些命令从简单的文件装入到允许你检查所调用的堆栈内容的复杂命令,下表列出了你在用 gdb 调试时会用到的一些命令。这些命令从...
Win10配置 STM32/GD32 单片机
GCC
+VScode 编译调试总结 2021版
@[TOC](Win10 配置STM32/GD32
GCC
+VScode 编译环境总结(2021版,作者Cody) ) 引言 在嵌入式开发过程中, 之前都是用的是Keil-MDK, IAR, 商业开发环境. Keil MDK MDK被ARM收购以后,AC6 AC6 编译器的性能越来越给力....
linux-编译
gcc
调试gdb与安装make与core
1,工具
gcc
:编译C文件 单文件编译 $
gcc
-c hello.c #只编译不链接,生成hello.o $
gcc
-o hello hello.o #输出可执行文件hello 多文件编译 $
gcc
-c thanks.c thanks2.c #thanks.c调用了thanks2.c定义的函数 $
gcc
-...
C或C++如何通过程序执行
shell
命令并
获取
命令执行结果?
祝大家新年快乐,身体健康,工作顺利,牛年大吉!1 参考资料 1、【c/c++】如何调用【linux】
shell
命令行命令并
获取
命令行的输出内容(https://blog.csdn.net/...
C语言之linux、
shell
、vim、
gcc
、makefile、gdb调试
常用的有sh(Bourne
Shell
), csh(C
Shell
), ksh(Korn
Shell
), tcsh(TENEX/TOPS-20 type C
Shell
), bash(Bourne Again
Shell
)等。 系统管理员可以根据系统情况和用户习惯为用户指定某个
Shell
。如果不指定
Shell
,那么...
Linux/Unix社区
23,121
社区成员
74,508
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章