文档章节

gcc编译工具详解

zhanggong
 zhanggong
发布于 2016/01/02 15:54
字数 381
阅读 13
收藏 0

gcc识别的文件的扩展名如下:

.c c语言程序。

.i c语言预处理后的文件。

.C .cc. cpp. cp c++程序。

.ii c++预处理后的程序。

.S 汇编文件

.s 预处理后的汇编文件。

.o 编译后的目标文件。

.a 目标文件的静态链接库、

.so 目标文件的动态链接库。

gcc ,g++编译选项。

-o file 指定生成输出的文件名。

-E 只进行预处理

-S 只进行预处理和编译

-c 只进行预处理和编译和汇编,不链接。

-Wall 打印所有的警告。

-w 关闭所有的警告。

-0[0-3] 编译器优化级别,0表示不优化。

-include file 插入一个文件。等同于源程序中的#include

-Dmacro[=def] 将名为marco的宏定义为def,若def忽略不写,则marco=1

-Umacro 取消宏定义。

-v 显示gcc工具的配置命令,预处理器和编译器的版本号。

-ldir 将dir目录加入头文件搜索目录列表,优先在dir目录中包含的头文件。

-Ldir 将dir目录加入库文件目录列表,优先在dir目录中查找库文件。

-lname 链接库为name的库

-static 链接时使用静态库

-shared 链接时使用动态库

-g 在可执行文件中加入标准调试信息。

gcc举例: 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_elf

等同于: gcc hello.c -o hello_elf

© 著作权归作者所有

共有 人打赏支持
zhanggong
粉丝 5
博文 51
码字总数 26791
作品 0
深圳
程序员
C 语言编译器 gcc 命令详解

Linux 系统中最重要的软件开发工具是 gcc,在 Linux 系统中,c89、cc 和 gcc 这些命令基本上都指向系统的C语言编译器,通常是GNU C编译器,或都简称 gcc。在 UNIX 系统中,C 语言编译器称为 ...

晨曦之光
2012/03/09
1K
0
Redis详解(一)------ redis的简介与安装

  工作中一直在用 Redis,但是一直没有进行系统的总结,这个系列的博客将整体的介绍 Redis 的用法。 1、Redis 的简介   Redis:REmote DIctionary Server(远程字典服务)。   是由意大利...

ysocean
05/25
0
0
MinGW5.1.6安装与设置简明教程

MinGW是为了让不喜欢在linux/unix下工作的朋友在windows下使用GNU 工具的一个环境。最近看到网上有网友不知道如何安装和设置MinGW,故偶特意写下这个简明教程,期待着MinGW能快速普及起来。 ...

小猴纸
2012/10/07
0
3
Linux C 库的生成与使用

库文件的存在极大的提高了 C/C++ 程序的复用性,本文简单介绍如何生成、使用它们。 命名约定:我们一般对库文件约定以 开头,动态库文件一般以 (*nix)或 (Windows) 结尾,静态库文件一般...

傅易
2016/08/20
68
0
Nginx状态信息(status)配置及信息详解

Nginx状态信息(status)配置及信息详解 nginx与php-fpm一样内建了一个状态页,对于想了解nginx的状态以及监控nginx非常有帮助。为了后续的zabbix监控,我们需要先了解一下nginx的状态页。 ...

CzlunSu
06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

maven坐标和依赖

一、maven坐标详解 <groupId>com.fgt.club</groupId><artifactId>club-common-service-facade</artifactId><version>3.0.0</version><packaging>jar</packaging> maven的坐标元素说......

老韭菜
今天
1
0
springmvc-servlet.xml配置表功能解释

问:<?xml version="1.0" encoding="UTF-8" ?> 答: xml version="1.0"表示是此xml文件的版本是1.0 encoding="UTF-8"表示此文件的编码方式是UTF-8 问:<!DOCTYPE beans PUBLIC "-//SPRING//......

隐士族隐逸
今天
1
0
基于TP5的微信的公众号获取登录用户信息

之前讲过微信的公众号自动登录的菜单配置,这次记录一下在TP5项目中获取自动登录的用户信息并存到数据库的操作 基本的流程为:微信设置自动登录的菜单—>访问的URL指定的函数里获取用户信息—...

月夜中徘徊
今天
0
0
youTrack

package jetbrains.teamsys.license.runtime; 计算lis package jetbrains.ring.license.reader; 验证lis 安装后先不要生成lis,要把相关文件进行替换 ring-license-checker-1.0.41.jar char......

max佩恩
今天
1
0
12.17 Nginx负载均衡

Nginx负载均衡 下面的dig看到可以返回2个IP,就是解析出来的IP,这样我们可以做负载均衡。 dig www.qq.com 1.vim /usr/local/nginx/conf/vhost/fuzai.conf 2.添加如下配置 upstream qq //定义...

芬野de博客
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部