首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux学习_005_Linux使用命令安装gcc、g++、gdb

注意:本博文在CentOS7.5版本上进行了测试,不同版本可能会出现差异。 以下均为root用户下操作,安装时请确保你Linux可以上网。...Linux使用命令安装gcc、g++、gdb 使用gcc用来编译C程序 使用g++用来编译C++程序 使用gdb来调试程序 1、gcc安装 现在下载CentOS版本几乎都会自带gcc和vim,所以我们需要只是...检查你Linux是否有gcc: [root@itheima ~]# which gcc /usr/bin/which: no gcc in (/usr/local/sbin:/usr/local/bin...++ 安装完成后,再次检查,就会出现该命令路径: [root@itheima ~]# which g++           /usr/bin/g++ 3、gdb安装 先检查是否有gdb: [root...root/bin) 说明没有,使用以下命令安装g++: root用户:yum install gdb 普通用户:sudo yum install gdb 安装完成后,再次检查,就会出现该命令路径: [

4.7K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用gcc编译gdb调试

    gcclinux系统中,默认是没有安装gcc编译器,可以通过命令 rpm -q | grep gcc  来查看。...安装命令为: yum -y install gcc 安装后,编写一个.c结尾文件。 gcc test.c  就会默认输出一个a.out输出文件,这个输出文件就是可执行文件。...gcc -o test test.c test就是它可执行文件。 一般都默认加上-Wall 选项,可以自动提示一些出错警告信息。...gcc -Wall -o test test.c gbd 以上就是常用gcc相关知识了。下面就是它调试,调试通常使用gdb。...在编译时候需要加上选项-ggdb3选项 gcc -ggdb3 -Wall -o test test.c 这样在没有出错情况 gdb test 就进入调试窗口 输入下面命令可以进行如下操作: break

    2.1K70

    linuxgdb常用调试命令

    gdb调试程序时,常常很困惑一些命令使用,要么是不知道这个命令,要么忘了命令使用方法。...起始位置 watch buf buf值一旦改变,会触发watchpoint 奇淫技巧: cat ~/.gbinit gdb会从这个文件读取配置 cat ~/.gdb_history 呵呵,...对于gdb时想要查看长字符串老是显示不全,怎么半呢,gdb参看数组字符串时默认只是显示部分数据,通过这个命令可以修改: set print elements 0 默认这里设置是200,设置为0表示没有限制...还有其它一些set命令可以试试: set print address set print address on 打开地址输出,当程序显示函数信息时,GDB会显出函数参数地址。...系统默认为打开 set print object 在C++中,如果一个对象指针指向其派生类,如果打开这个选项,GDB会自动按照虚方法调用规则显示输出,如果关闭这个选项的话,GDB

    3K20

    linuxClang和gcc区别

    Gcc 优势: · 一些软件用 clang 编译会出现莫名其妙错误,但是用 gcc 编译可以通过 。...· GCC 在 5.0 之前一直都在准备用 C++ 实现模块化,期待 GCC 5.0 会有所突破,补上无法模块化短板。 ---- 编译速度更快、编译产出更小、出错提示更友好。...尤其是在比较极端情况。 两年多前曾经写过一个Scheme解释器,词法分析和语法解析部分大约2000行,用是Boost.Spirit——一个重度依赖C++模版元编程框架。...+1/3或1/4 相较于g++,编译错误可读性有所飞跃,至少不会出现编译错误过长被截断问题了 当时最大缺点是clang编译出可执行文件无法用gdb调试,需要用调试器时候还得用g++再编译一遍。...不过这个问题后来解决了,我不知道是clang支持了gdb还是gdb支持了clang。至少我当前在Ubuntu用clang 3.0编译出二进制文件已经可以顺利用gdb调试了。

    5.4K10

    Linux系统gdb调试(一)

    这段时间逛了一招聘网站上,对于嵌入式要求里面有要求会gdb调试,而且再加上昨天在交流群里面,刚好有网友问gdb怎么调试,这让我学gdb调试欲望越来越强烈,这不,应网友要求,今天就来给大家分享自己总结实战调试方法...Linux GDB(GNU Debugger)是-一个用来调试C、C++程序功能强大调试器,它能够在程序运行过程中观察程序内部结构和内存使用情况。...3、gdb命令+实战演示: gdb使用非常简单,只要在Linux命令提示符输入gdb命令,系统便会启动gdb。...另外,为了使gdb正常工作,必须使程序在编译时候包含调试信息,这需要在gcc编译时加上-g或者-ggdb选项。调试信息包含了程序中每个变量类型和在可执行文件中地址映射以及源代码行号。...下图是在Linux启动gdb简单演示,具体会在下面的实战来演示: root@ubuntu-virtual-machine:/home/ubuntu# gdb GNU gdb (Ubuntu 8.1

    4K10

    Linuxgdb用法简单介绍

    /n", result );     24        printf("result[1-250] = %d /n", func(250) );     25 } 编译生成执行文件: gcc...This GDB was configured as "i386-suse-linux"......(gdb) quit ——————退出gdb 好了,有了以上感性认识,还是让我们来系统认识一gdb吧。 使用GDB 一般来说GDB主要调试是C/C++程序。...使用编译器(cc/gcc/g++)-g参数可以做到这一点,如: $ cc –g hello.c –o hello $ g++ -g hello.cpp –o hello 如果没有-g,你将看不见程序函数名...Gdb中,输入命令时,可以不用打全命令,只用打命令前几个字符就可以了,当然,命令前几个字符要标志着一个唯一命令,在linux,可以敲击两次TAB键来补齐命令全称,如果有重复gdb会把其列出来

    1.6K30

    LinuxGDB调试指令总结

    摘要 之前写C++一些程序都是在windows,直接使用VS2017傻瓜式编译器,最近尝试摸索在linux进行C++程序编译,有了一些成果!特此总结!...主要分为两种编译方式:1.g++/gcc编译,2.cmake编译,注意cmake编译需要编写CMakeLists.txt文件。...代码调试器:避免不了,程序会出现bug,但是使用命令行编译出错后是没有调试信息(g++编译时),因此我们需要使用gdb对程序进行调试。 ?...call 函数(参数):调用程序中可见函数,并传递“参数”,如:call gdb_test(55) quit(简写q) : 退出gdb 02 设置断点: break n (简写b n):在第n行处设置断点...如:display a watch 表达式:设置一个监视点,一旦被监视“表达式”值改变,gdb将强行终止正在被调试程序。

    4.5K20

    GCC调试工具GDB常用指令

    使用delete+断点编号指令删除断点 可简写为d 使用 clear+断点行号指令清除断点 使用 disable/enable + 断点编号 指令冻结或启动断点 使用info break指令查看断点情况...使用 tbreak 指令设置临时断点 使用 awatch/watch + 变量 设置变量读写观察点 使用continue指令运行到断点处 可简写为c 使用print指令打印变量值 可简写为p 使用x...指令打印指定内存地址数据 使用run指令运行整个程序 可简写为r 使用 call 指令直接运行某个函数 使用display 指令设置需要跟踪变量 使用 info display 显示当前所有跟踪情况...使用undisplay+编号 指令取消对变量跟踪 使用 set+ 变量 指令改变变量值 使用 set 指令设置运行时参数 使用 show 指令查看运行时参数 使用 finish 指令函数结束 使用

    63030

    Linux使用gdb调试core文件

    core意指core memory,用线圈做内存。如今 ,半导体工业澎勃发展,已经没有人用 core memory 了,不过,在许多情况,人们还是把记忆体叫作 core 。...一般情况,无需修改,按照默认方式即可。 4.gdb调试core文件步骤 使用gdb调试core文件来查找程序中出现段错误位置时,要注意是可执行程序在编译时候需要加上-g编译命令选项。...gdb调试core文件步骤常见有如下几种,推荐第一种。 具体步骤一: (1)启动gdb,进入core文件,命令格式:gdb [exec file] [core file]。...用法示例:gdb -core test.core。 (2)其它步骤同步骤二。 5.其它查找段错误位置方法 可以使用gdb进行单步调试,来查找段错误出错位置。...gdb用例具体见: Linuxgdb用法简单介绍。

    40K42

    LinuxGDB调试器常用指令

    本文是该系列第三篇文章,你可以通过以下链接查看过去内容 1. Linux中编译C++代码g++工具,以及g++常用操作指令 2. LinuxC++命令行编译示例 1....概述 GDB(GNU Debugger) 是一个用来调试 C/C++ 程序功能调试器,是Linux系统开发C/C++最常用调试器 程序员可以使用GDB来跟踪程序中错误,从而减少程序员工作量 Linux...开发C/C++一定要熟悉GDB VScode是通过调用GDB调试器来实现工作 Windows中,常用集成开发环境,如VS,VC等已经内嵌了相应调试器 GDB主要功能: 设置断点(断点可以是条件表达式...常用调试命令参数 调试开始:执行gdb [exefilename],进入gdb调试程序,其中exfilename为要调试执行文件名,以下命令后括号内为命令简化使用,比如 run(r),直接输入命令...gdb 进行调试,例如:gcc -g main.cpp -o main 回车键:重复上一条命令 > 本文来自自己学习笔记

    1.7K20

    浅谈Linux环境gcc优化级别

    代码优化可以说是一个非常复杂而又非常重要问题,以笔者多年linux c开发经验来说优化通常分为两个方面,一是人为优化,也就是基于编程经验采用更简易数据结构函数等来降低编译器负担,二是采用系统自带优化模式...,也就是gcc – o系列,下面我将简述一各级优化过程以及实现。...gcc – o1 首先o1上面还有一个o0,那个是不提供任何优化,项目中几乎不会使用,而o1使用就非常广泛了,o1是最基本优化,主要对代码分支,表达式,常量来进行优化,编译器会在较短时间将代码变得更加短小...gcc – o2 这个优化级别是o1进阶,在上一级基础上会进行更严格细分,最重要是加入了寄存器使用。...总结 以上就是本文关于浅谈Linux环境gcc优化级别的全部内容,希望对大家有所帮助。欢迎大家继续参阅本站其他相关专题,感谢朋友们对ZaLou.Cn网站支持。

    1.8K20

    深入探索GDBLinux强大调试神器

    目录 一、GDB简介:源码级调试基石 二、GDB基础操作:从入门到熟练 启动与基本命令 三、GDB进阶功能:解锁更深层次调试能力 1. 回溯追踪:洞察调用栈 2....配合IDE使用 ✨一、GDB简介:源码级调试基石 GDB,全称GNU Debugger,是一款开源、跨平台源码级调试工具,尤其在Linux生态系统中占据着举足轻重地位。...GDB支持包括C、C++、Fortran、Ada、Objective-C、Go、D等多种编程语言,能够与GCC、Clang、LLVM等一系列主流编译器无缝集成。...首先,编译程序并生成调试信息: gcc -g -o null_pointer null_pointer.c 然后启动GDB,设置断点并运行: gdb ....当观察变量被修改时,GDB会自动暂停程序。这对于追踪难以复现偶发问题尤为有用: (gdb) watch variable_name 4.

    90310

    linux使用gcc编译运行C程序

    gcc(GNU Compiler Collection)是Linux最常用C语言编译器,是GNU项目中符合ANSI C标准编译系统,能够编译用C、C++和Object C等语言编写程序。 ...在linux系统中,常见使用方法有两种,如下: gcc -o out in1 in2 //gcc编译以及链接(对in1文件和in2文件进行编译生成...out.o文件,“-c”:表示只生成*.o文件) 若在arm板里运行,就需要在linux系统中使用arm-linux-gcc交叉编译才行: arm-linux-gcc -o out in1...in2 //gcc编译以及链接(对in1文件和in2文件进行编译生成out.bin文件,“-o”:表示生成可执行文件) arm-linux-gcc -c...vi hello.c                          //编辑hello.c 内容如下: gcc -o hello  hello.c  a.c               //gcc

    7.4K90

    Linux环境通过GDB调试C项目实战

    通过GDB调试找到程序bug 请查看位于https://github.com/xmu-Linux101/Linux101/tree/201720182/experiments/gcc-5-gdb代码...g 默认情况gcc在编译时不会建个调试符号插入到生成二进制代码中,如果需要生成调试符号信息,可以使用gcc -g选项,一般不加调试选项,否则会使代码增大。...gdb调试器功能gdb 调试器功能gdb调试器功能 ​ 1.设置断点 ​ 2.单步执行程序,便于调试 ​ 3.查看程序中变量值变化 ​ 4.动态改变程序执行环境 ​ 5.分析崩溃程序产生...core文件 以上这些就是这次实验前置知识,需要我们采用gdb调试器来找出一些程序bug 首先看一这个程序目录结构: ?...,进行测试编写代码功能是否正常执行 在找这个项目的bug之前我们必须确认一Makefile内容是否有逻辑错误或者语法错误,这样才能保证我们后期调试没有问题 输入vi Makefile,我们看到:

    5.3K50

    linux使用gcc编译运行C程序

    gcc(GNU Compiler Collection)是Linux最常用C语言编译器,是GNU项目中符合ANSI C标准编译系统,能够编译用C、C++和Object C等语言编写程序。 ...在linux系统中,常见使用方法有两种,如下: gcc -o out in1 in2 //gcc编译以及链接(对in1文件和in2文件进行编译生成...out.bin文件,“-o”:表示生成可执行文件) gcc -c out in1 in2 // gcc编译不链接(对in1文件和in2文件文件进行编译生成...out.o文件,“-c”:表示只生成*.o文件) 若在arm板里运行,就需要在linux系统中使用arm-linux-gcc交叉编译才行: arm-linux-gcc -o out in1...in2 //gcc编译以及链接(对in1文件和in2文件进行编译生成out.bin文件,“-o”:表示生成可执行文件) arm-linux-gcc -c

    6.1K70
    领券