zoukankan      html  css  js  c++  java
  • 2018-2019-1 20165331 《信息安全系统设计基础》第一周学习总结

    2018-2019-1 20165331 《信息安全系统设计基础》第一周学习总结

    gcc编译器

    常用参数:

    -I:在此参数后添加自定义头文件的路径
    -E:表示对.c文件预处理,输出.i文件
    -S:表示对.i文件进行编译,输出.s文件
    -c:表示对.s文件进行汇编,输出.o文件
    -o:指定生成的输出文件
    -l:指定程序要链接的库
    -L:指定库文件所在目录

    操作格式:

    gcc -E hello.c -o hello.i
    gcc -S hello.i -o hello.s
    gcc -c hello.s -o hello.o
    gcc hello.o -o hello
    使用通配符进行多模块编译

    gdb的使用

    首先在编译时加入-g参数以进行调试
    gdb:打开gdb
    file ...:在gdb中打开某文件
    l&list:每10行列出程序
    b n:在第n行添加断点
    b n if ...:在第n行添加一个条件为...的条件断点
    r:运行程序
    next:运行下一步
    clear:清除断点
    quit:退出gdb

    库的生成与使用

    静态库

    生成:ar rcvs mymath.a *.o
    调用:gcc main.c -o main -L. -lmath

    共享库

    生成:gcc -shared -fpic -o mymath.so *.c
    调用:gcc -o link main.c ./mymath.so

    Makefile

    基本格式:

    target 目标文件名 : 生成目标文件所需文件
    make执行的命令
    ...
    ...
    需要注意的是在vi中,第二行开始的各项命令都需要使用Tab键空出首位。

    执行过程:

    vi makefile
    make
    ./...

  • 相关阅读:
    给你的程序增加热键(C#)
    C#中的键盘处理
    可以给img元素设置背景图
    如何利用JS实现对后台CS代码的调用
    李阳疯狂英语300句
    如何基于linux创造财富
    3d材质贴图常用参数
    asp.net下检测远程URL是否存在的三种方法
    ASP.NET 配置
    服务器硬盘空间操作
  • 原文地址:https://www.cnblogs.com/violence/p/9694112.html
Copyright © 2011-2022 走看看