关于Linux系统中使用gcc命令编译C源码

1.emacs中完成对c代码的编写
eg:emacs testname.c
2.使用gcc命令编译(参考链接:https://blog.csdn.net/kouxi1/article/details/123489598)
    1)gcc testname.c -o testname(如果不使用-o,系统默认生成可执行文件名为a.out)
    2)./testname
    3)gcc工作原理:预处理  编译  汇编 链接

    预处理
    .c——>.i
    命令:gcc -E hello.c -o hello.i

    编译
    .i——>.s
    命令:gcc -S hello.i -o hello.s

    汇编
    .s——>.o
    命令:gcc -c hello.s -o hello.o

    链接(把obj文件链接为可执行的文件)
    命令:gcc hello.o -o hello

 

 



gcc常用选项:(操作参考链接:https://blog.csdn.net/mysee1989/article/details/21513809)
    -v    查看gcc编译器的版本,显示gcc执行时的详细过程    
    -o<file>    指定输出文件名为file,这个名称不能跟源文件名同名
    -E    只预处理,不会编译、汇编、链接
    -s    只编译,不会汇编、链接
    -c    编译和汇编,不会链接
    -I<头文件目录>    指令头文件(.h)目录(不指定优先从系统目录寻找)
    -L<库目录>    指定依赖的库目录(so、或lib、dll)


3.gcc附加内容(参考链接:https://www.cnblogs.com/computer1-2-3/p/15879165.html)
    1)file命令查看文件信息
        file filename
    2)od命令(参考链接:https://blog.csdn.net/qq_40085614/article/details/119532314?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-119532314-blog-122927820.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-119532314-blog-122927820.pc_relevant_default&utm_relevant_index=5)
        od -b filename(八进制输出)
注:文中filename为文件名称,testname同理


posted @   遥鱼  阅读(245)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示