gcc常用命令选项

保姆级教程:在RK3588平台上为IMX415 Sensor配置HDR2曝光(附完整代码与避坑点) 本文提供RK3588平台上为IMX415 Sensor配置HDR2曝光的详细教程,涵盖基础概念、限制条件、实战配置步骤及常见问题解决方案。通过完整代码示例和关键参数解析,帮助开发者高效实现HDR2曝光模式,提升图像质量并避开常见陷阱。 阅读详情

作者:

Sunnylunch-blog

链接:Sunnylunch-blo
http://blog.youkuaiyun.com/LF_2016/article/details/55532364

gcc这条命令用来将源代码生成可执行程序,下面来看一下gcc的常用选项。 
1、无选项编译链接 
例:命令:gcc test.c //会默认生成a.out可执行程序 
2、-E: 进行预处理和编译,生成汇编文件。 
命令:gcc -E test.c //会生成test.i文件

3、-S: 进行预处理,编译,汇编等步骤,生成”.s”文件 
例:命令:gcc -S test.c //会生成test.s文件

4、-c: 会直接生成二进制目标文件 
例:命令:gcc -c test.c //会生成test.o文件

5、-o :对生成的目标进行重命名 
例:命令:gcc -o test test.c //会生成名字是test可执行文件而不是默认的a.out

6、-pipe: 使用管道代替编译中的临时文件 
例:命令:gcc -pipe -o test test.c

7、-include file :包含某个代码。相当于在文件中加入#include 
例:gcc test.c -include /root/file.h

8、-Idir:当你使用#include”file”的时候,会先到你定制的目录里面查找

9、-I-:取消前一个参数的功能。一般在-Idir之后使用

10、-C:在预处理的时候不删除注释信息,一般和-E使用。

11、-M:生成文件关联信息。包含目标文件所依赖的所有源代码。

12、-MM:和-M一样,只不过忽略由#include所造成的依赖关系。

13、-MD:和-M相同,只不过将输出导入到”.d”文件里面

14、-MMD:和-MM相同,将输出导入到”.d”文件里面。

15、-llibrary:定制编译的时候使用的库 
例:gcc -lpthread test.c //在编译的时候要依赖pthread这个库

16、-Ldir:定制编译的时候搜索库的路径。如果是自己定制的库,可以用它来定制搜索目录,否则编译器只在标准库目录里面找,dir就是目录的名字

17、-O0(字母o和数字0):没有优化 
-O1:-O1位缺省值 
-O2:二级优化 
-O3:最高级优化 
级别越大优化越好,但编译时间边长。

18、-g:在编译的时候假如debug调试信息,用于gdb调试

19、-share:此选项尽量的使用动态库,所以生成文件比较小,但是必须是系统有动态库。

20、-shared:生成共享目标文件,通常用在建立共享库。

21、-static:链接时使用静态链接,但是要保证系统中有静态库。

22、-w:不生成任何警告信息

22、-Wall:生成所有警告信息

23、-D:指定宏定义
man手册说明:
 -D name
           Predefine name as a macro, with definition 1.



Sunnylunch-blo
别再让会议变‘回音壁’:手把手教你调优WebRTC的AEC3回声消除(附实战代码) 本文深入解析WebRTC的AEC3回声消除技术,提供从参数调优到声学环境适配的实战指南。通过诊断回声特征、解剖核心参数(如filter.length_blocks和delay_estimate_smoothing)以及应对特殊场景(如密闭空间与开放办公区),帮助开发者有效解决视频会议中的回声问题,提升语音通信质量。附有实战代码和调试工具,适合需要优化实时通信体验的开发者。 阅读详情

相关推荐

《Hadoop大数据技术原理与应用》(第2版)黑马程序员的课后习题答案

《Hadoop大数据技术原理与应用》(第2版)黑马程序员的课后习题答案

qq_36773158的博客 4646

gcc 选项

gcc直接跟源文件会将源文件进行预处理、编译、连接、生成默认名为a.o的可执行文件。而-c选项会处理到编译环节终止,生成一个目标文件,默认名为filename.o,它必须再经过链接才最终生成可执行文件。 ...

tus00000的博客 2943

易灵思Ti60F100 FPGA的HyperRAM实战:从硬件连接到Native接口时序调试

本文详细介绍了易灵思Ti60F100 FPGA内置HyperRAM控制器的实战应用。文章从硬件设计要点(如400MHz+信号完整性、等长匹配)切入,重点解析了如何通过Interface Designer配置高效的Native接口,并分享了其时序详解与调试技巧,为开发者提供了一份从硬件连接到软件调试的深度指南。

weixin_29168153的博客 456

Gcc的参数

整理了一下别人的文档,找不到出处了!请作者谅解!如需要请联系!谢谢! gcc 与 g++ 分别是 gnu 的 c & c++ 编译器 gcc/g++ 在执行编译工作的时候,总共需要4步: • 1、预处理,生成 .i 的文件[预处理器cpp] • 2、将预处理后的文件转换成汇编语言, 生成文件 .s [编译器egcs] • 3、有汇编变为目标代码(机器代码)生成 .o 的文件[汇编器as] ...

seaship的博客 934

深入解析fio Benchmark测试:从源码到实践

本文深入解析fio Benchmark测试工具,从入门指南到源码架构分析,详细介绍了其核心模块、关键数据结构和I/O处理机制。通过实战案例展示如何优化存储性能测试,包括内存对齐、多线程调优等技巧,帮助开发者充分利用fio进行精准的存储性能评估。

weixin_42563415的博客 208

出现Command ‘vim‘ is available in the following places,vim: command not found等解决方法

内置命令无法识别,说明系统变量有误,导致无法识别,既然系统变量有误,将其注释或者更改为正确的即可,但是现在打不开,又怎么注释掉。替换vim来打开编辑,打开之前错误的全局变量文件,发现变量有误,要么注释要么改为。系统变量有全局变量(通过命令行printenv或者echo)和局部变量。对应通过vim修改错误的变量文件,不然source也无法让配置文件生效。本身vim是系统内置的命令,连vim都出现问题。修改为正确的即可,之后还需要重启服务器,使用。之后即可成功,通过即可查看命令是否有写入。...

码农研究僧的博客 5883

Ubuntu深入学习

文章目录一、可执行程序是如何被组装的?二、用gcc生成静态库和动态库1.编辑生成例子程序 hello.h、hello.c 和 main.c2.将hello.c编译成.o文件3.由.o 文件创建静态库4.在程序中使用静态库三、静态库.a与.so库文件的生成与使用1.引入库2.读入数据三.总结 一、可执行程序是如何被组装的? 1.编辑:也就是编写C/C++程序。 2.预处理:相当于根据预处理指令组装新的C/C++程序。经过预处理,会产生一个没有宏定义,没有条件编译指令,没有特殊符号的输出文件,这个文件的含义.

weixin_46699031的博客 1415

YOLOv11改进策略【小目标改进】| 添加专用于小目标的检测层 附YOLOv1~YOLOv11的检测头变化详解

在目标检测领域,小目标检测一直是一个具有挑战性的问题。算法以其高效快速的特点受到广泛关注,然而在面对小目标时,仍存在一些局限性。本文将介绍如何在中添加小目标检测层,以提高对小目标的检测能力。原始模型结构如下:详细内容参考:YOLOv11原始模型结构介绍 二、有效特征层对应的检测头类别 2.1 P3/8 - small检测头 原始模型中的对应的检测头主要用于检测相对较小的目标。其特征图大小相对较大,空间分辨率较高。 适合检测尺寸大概在到像素左右的目标。 2.2 P4/16 - medium检测头 这个检

Limiiiing的博客 8798

GCC使用及其常用选项介绍

GCC使用及其常用选项

weixin_46251230的博客 4258

小工匠聊架构-分布式场景下的并发幂等性常见的解决方案

Pre 我们来回顾下单体时代 单体时代,应用部署在一台主机上,可以使用JVM级别的锁来控制并发请求 。 随着应用规模的不断扩大,集群化或者微服务化的分布式部署越来越普及,每个应用都是一个单独的JVM应用,所以单体时代的这种处理方式已经无法满足当前架构下的业务需求了。 JVM级别的锁已经无法满足跨进程之间访问控制了,进而演化出来了分布式锁。 分布式锁 能否解决幂等性问题? 分布式锁解决什么问题? 简言之: 解决跨进程间无法共享本地资源的问题 ,解决的是分布式场景下并发访问的问题。 为什么需要确保并发.

小工匠 2万+

Far planner代码系列(2)

graph_decoder系列(2) 承接上文 我们接着来看decoder_node.cpp的代码部分 void GraphDecoder::Init() { /* initialize subscriber and publisher */ //graph_sub_ 订阅节点/robot_vgraph 其类型是visibility_graph_msg/Graph的消息 graph_sub_ = nh.subscribe("/robot_vgrap...

博客 1534

GCC 常用命令

GCC编译过程一个 C/C++文件要经过预处理(preprocessing)、编译(compilation)、汇编(assembly)和链接(linking)等 4 步才能变成可执行文件(1) 预处理C/C++源文件中,以“#”开头的命令被称为预处理命令,如包含命令“#include”、宏定义命令“#define”、条件编译命令“#if”、“#ifdef”等。预处理就是将要包含(include)的文件插入原文件中、将宏定义展开、

TyearLin的专栏 7262

作为一名爬虫人如何实现千万级数据爬取?

爬虫门槛不高,高就高在往后余生的每一次实操都随时会让你崩溃!Bro

吴秋霖的博客 1万+

gcc的常用命令行选项

gcc的常用命令行选项 选项                   说明 -o FILE                指定输出文件名,在编译为目标代码时,这一选项不 是必须的.如果FILE没有指定,默认文件名时a.out -c                     只编译不链接 -DFOO=BAR              在命令行定义预处理宏FOO,其值为BAR -IDIRNAM

whoseryourgod的专栏 638

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

gcc编译常用命令选项

gcc编译器命令选项:gcc [选项] 文件 预处理常用选项: -C : 在预处理后的输出中保留源文件中的注释; -D name 定义一个宏name, 而且其值为1; -D name=defination 定义一个宏name, 并指定其值为defination, 其作用等价于                    在源文件中使用宏定义指令 #define name defination

hustluy的专栏 749

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Linux之gcc编译过程及其常用命令选项

文章目录前言一、gcc编译过程二、gcc命令常用选项 前言 gcc可以支持多种语言的编译(C,C++…) 如有错误,请指正,感谢! 一、gcc编译过程 预处理 :预处理器(cpp)将源代码中包含的头文件编译进来,进行简单替换,生成".i"文件 编译 :编译器(cc)首先要检查代码的规范性、是否有语法错误等,以确定代码的实际要做的工作,在检查无误后,编译器(cc)把代码翻译成汇编语言(".s")文件。 汇编 :汇编器(as)把编译生成的".s"文件转成二进制目标代码(“.o”文件) 链接:连接器(ld

qq_44991159的博客 442

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

GCC常用命令选项

(利用GCC生成可执行文件的处理过程大致为:GCC需要调用预处理程序cpp,由它负责展开在源文件中定义的宏,并向其中插入"#include"语句所包含的内容;接着,GCC会调用as将处理后的源代码编译成目标代码;最后,GCC会调用链接程序ld,把生成的目标代码链接成一个可执行程序。) -E 使用-E选项可以让GCC停止在预处理完成阶段(完成所有#define,#if,#include等

人生代码,代码人生。。。 573

gcc常用命令 以及 makefile vpath与-I选项

添加头文件 -I例如在/home/work/include/目录下有编译foo.c所需头文件def.h,为了让GCC能找到它们,就需要使用-I选项: $ gcc foo.c -I /home/work/include/def.h -o foo 添加库文件:-L例如在/home/work/lib/目录下有链接所需库文件libdef.so,为了让GCC能找到它们,就需要使用-L选项: $ gcc foo

bingo_boy的专栏 2129

Linux gcc/g++ 常用命令选项集合

gcc和g++的编译选项通常情况下是一样的. 格式(选项 && 解释 ) linux gcc常用命令集合: -o FILE    && 指定输出文件名,在编译为目标代码时,这一选项不是必须的.如果FILE没有指定,缺省文件名是a.out. -c     &&  只编译生成目标文件,不链接 -m486    &&  针对 486 进行代码优化. -O0     &&  不进行优化处理(注

longfeihu的专栏 857

Linux编程参考资料——GCC编译器常用命令选项

GCC编译命令常用选项 选项 描述 命令示例 无 将源文件预处理、编译、汇编并链接形成可执行文件 [e.g.1]gcc source.c 未指定输出文件时默认输出为a.out [e.g.2]gcc source.c -o exec 将源文件source.c链接为可执行文件exec [e.g.3]gcc test.o -o test 将编译输出文件...

weixin_44998151的博客 523
上一篇: grep之字符串搜索算法Boyer-Moore由浅入深(比KMP快3-5倍)
下一篇: 常用的GUN二进制工具集
早起的虫儿灬
博客等级 码龄10年 54粉丝 114原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值