Linux 编程基础

Linux 编程基础

1. GCC编译器

https://blog.csdn.net/guo1988kui/article/details/81076252

2. gdb调试器 GUN priject debugger

命令含义缩写命令说明
quit / Ctrl + Dq退出
breakb断点
infoi描述程序的状态
runr开始运行程序
dispd跟踪变量 每次都停下显示它的值
nextn执行下一条语句
printp打印内部变量的值
continuec继续运行程序 直到下一个断点
set string = “abc4”设置变量的值
watch监视变量值的变化
bracktracebt查看函数调用信息
  1. list命令 : 显示多行源代码
    list n :显示以第n行为中心的10行代码
    list functionname : 显示以名为functionname的函数为中心的10行源代码
    list - :显示刚才打印过的源代码之前的源代码
  2. watch 命令: 设置观察点
    watch j:
    给出 变量 j 的变化情况 Old value & New value
  3. 调试段错误 core dump
    段错误,即对内存的非法访问。GDB定位段错误的两种方法
    (1) gdb程序遇到段错误自动停下来
    backtrace
    (2) 发生段错误时产生内存转储core dump文件,gdb调式该文件

3. Make工具

  1. 简介https://blog.csdn.net/cai0538/article/details/7318281
  2. Makefile 编写规则
目标: 依赖文件列表
<TAB> 执行命令

4. shell 编程

Bash 是 Linux 操作系统默认的shell程序
利用 vi 编辑器编辑shell程序,保存名称为 run_me.sh 文件

#!bin/bash
message = "hello world"
echo $message
exit

输入 ./run_me.sh

  1. autoconf: 用于生成一个可以自动配置资源的软件源码包 需要用到m4,便于生成脚本
    作用 : 用于可以生成自已自动配置的软件源码包,用于可以适应多种UNIX类系统的Shell脚本工具

  2. autoheader: 为configure产生模板头文件
    作用: autoheader 命令生成config.in,前提是aclocal.m4 configure.in必须生成,它负责产生configure.h.in

  3. autoreconf: 更新已经生成的配置文件

  4. autoscan: 产生初步的configure.in文件
    创建一个configure.scan文件,这个文件是configure.in的前身

  5. autoupdate:更新configure.in文件

  6. automake: 自动生成Makefile.in的工具
    从Makefile.am文件自动生成Makefile.in

  7. aclocal: 生成aclocal.m4文件
    aclocal 通过扫描configure.ac 或者 configure.in 文件生成 aclocal.m4文件

  8. configure: 生成Makefile文件
    http://blog.sina.com.cn/s/blog_530e99a401013tqj.html

e.g.
1. 在 tmp 目录下写hello.c程序
2. $ autoscan  
    生成 configure.scan  autoscan.log
    编辑修改为 configure.in
3. $ aclocal ; $ autoconf  
    生成aclocal.m4 文件夹autom4te.cache configure(可执行文件)
4. 手工编辑 makefile.am 文件
5. $ automake --add-missing
    产生文件,包括重要的Makefile.in文件
6. $ ./configure 生成Makefile
7. $ make
   $ ./hello
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值