Gcc 命令大全
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:生成所有警告信息
Gcc 命令大全的更多相关文章
- CMD命令大全
有关某个命令的详细信息,请键入 HELP 命令名 ASSOC 显示或修改文件扩展名关联. AT 计划在计算机上运行的命令和程序. ATTRIB 显示或更改文件属性. BREAK 设置或清除扩展式 CT ...
- 黑客攻击常用CMD命令大全
黑客常用命令大全net user heibai lovechina /add 加一个heibai的用户密码为lovechina net localgroup Administrators heibai ...
- Windows CMD命令大全(转)
Windows CMD命令大全 命令简介 cmd是command的缩写.即命令行 . 虽然随着计算机产业的发展,Windows 操作系统的应用越来越广泛,DOS 面临着被淘汰的命运,但是因为它运行 ...
- Android系统在超级终端下必会的命令大全(adb shell命令大全)
. 显示系统中全部Android平台: android list targets . 显示系统中全部AVD(模拟器): android list avd . 创建AVD(模拟器): android c ...
- 【干货分享】dos命令大全
一般来说dos命令都是在dos程序中进行的,如果电脑中安装有dos程序可以从开机选项中选择进入,在windows 系统中我们还可以从开始运行中输入cmd命令进入操作系统中的dos命令,如下图: 严格的 ...
- dos命令大全 黑客必知的DOS命令集合
dos命令大全 黑客必知的DOS命令集合 一般来说dos命令都是在dos程序中进行的,如果电脑中安装有dos程序可以从开机选项中选择进入,在windows 系统中我们还可以从开始运行中输入cmd命令进 ...
- DOS命令大全(转)
dos命令大全 CMD是command的缩写,是windows环境下的虚拟DOS窗口,提供有DOS命令,功能强大,如果你以前学习过DOS操作,那就小儿科了.是基于Windows的命令行窗口,在开始-- ...
- windows dos命令大全
windows dos命令大全 一.windows DOS命令概述 Windows的dos命令又是Windows的CMD命令.而cmd命令又是原来MS-DOS系统保留下来. DOS来源路径与配置对应的 ...
- DOS命令大全(二)
一般来说dos命令都是在dos程序中进行的,如果电脑中安装有dos程序可以从开机选项中选择进入,在windows 系统中我们还可以从开始运行中输入cmd命令进入操作系统中的dos命令,如下图: 严格的 ...
随机推荐
- 【设计模式】工厂方法模式 Factory Method Pattern
在简单工厂模式中产品的创建统一在工厂类的静态工厂方法中创建,体现了面形对象的封装性,客户程序不需要知道产品产生的细节,也体现了面向对象的单一职责原则(SRP),这样在产品很少的情况下使用起来还是很方便 ...
- 【Java】itext根据模板生成pdf(包括图片和表格)
1.导入需要的jar包:itext-asian-5.2.0.jar itextpdf-5.5.11.jar. 2.新建word文档,创建模板,将文件另存为pdf,并用Adobe Acrobat DC打 ...
- composer在update时提示file could not be downloaded: SSL operation failed with code 1. OpenSSL Error messages: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO
在开发的时候,需要把依赖的服务更新到最新,然后 手动composer update一下,提示如下: failed) Update failed (The "e "https://a ...
- docker 发布方式尝试
docker 发布方式尝试 目前有个小项目, 尝试用docker的方式来发布, 项目只有一个节点, 使用 kubenate 有点小题大做, 所以采用docker-compose来发布. 发布过程 GI ...
- Linux命令大杂烩
查看linux出口IP curl ifconfig.me scp跨服务器转移文件命令 scp 文件 root@IP:/application/apache-tomcat-8.0.36 回车, ...
- 随机数据生成与对拍【c++版,良心讲解】
10.7更新:见最下面 离NOIP2018没剩多长时间了,我突然发现我连对拍还不会,于是赶紧到网上找资料,找了半天发现了一个特别妙的程序,用c++写的! 不过先讲讲随机数据生成吧. 很简单,就是写一个 ...
- ASP.NET Core 2.1 : 十四.静态文件与访问授权、防盗链
我的网站的图片不想被公开浏览.下载.盗链怎么办?本文主要通过解读一下ASP.NET Core对于静态文件的处理方式的相关源码,来看一下为什么是wwwroot文件夹,如何修改或新增一个静态文件夹,为什么 ...
- scala的多种集合的使用(3)之遍历集合的方法
遍历集合的方法 1.用foreach循环遍历一个集合 foreach接收一个函数作为参数.定义的函数应该接收一个元素作为输入参数,然后不要返回任何的东西.输入的参数的类型应该匹配集合中的类型.随着fo ...
- ansible-playbook(node_exporter)
roles/node_exporter/tasks/main.yml - name: copy package copy: src=node_exporter-0.17.0.linux-amd64.t ...
- MYSQL Statement violates GTID consistency: Updates to non-transactional tables can only be done in either autocommitted statements or single-statement transactions, and never in the same statement as
[2019-04-21 10:17:20] [ERROR] [org.hibernate.engine.jdbc.spi.SqlExceptionHelper:144] Statement viola ...