gcc编译C++程序后,会生成很多的类似.data._ZNSt17_xxxxxxx的段,为什么?

等级
本版专家分:0
结帖率 37.5%
等级
本版专家分:103
勋章
Blank
红花 2006年4月 扩充话题大版内专家分月排行榜第一
等级
本版专家分:0
wumingguoguo

等级:

gcc编译c++文件

gcc编译c语言的,默认情况下,如果直接编译c++程序报错: [root@server demo2]# ls hello.cpp [root@server demo2]# cat hello.cpp  #include <iostream> using namespace std; int main(){ ...

gcc编译C++文件

我们误以为gcc只能用来编译C...gcc也可以编译C++文件,只是gcc不能自动联接C++程序使用的库,即链接过程我们不能用gcc 而g++实际上在编译C++文件时也是使用gcc编译器,在链接时才使用g++ 例子1: #include temp

gcc编译C++程序

gcc编译C++程序 单个源文件生成可执行程序下面是一个保存在文件 helloworld.cpp 中一个简单的 C++ 程序的代码:/* helloworld.cpp */#include int main(int argc,char *argv[]){ std::cout return(0);}程序使用...

linux下使用gcc编译运行C/C++程序

编译C  首先,程序编译过程有: 1.预处理(展开宏,头文件,检查代码是否有误) 2.编译(将.c转为汇编代码.s) 3.汇编(将汇编代码.s转为机器代码.o) 4.链接(将所有机器代码.o和库文件链接成一个可执行程序) 一般编译...

Linux下gcc编译生成动态链接库*.so文件并调用它

 动态库*.so在linux下用c和c++编程时经常碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也其它正动态库链接库而苦恼的兄弟们提供一点帮助。...

使用gcc编译.c文件,生成汇编.s文件的方法

若非要生成这种文件不可,可以利用下面的示例命令: gcc -E test.c -o test.i <br />在编译阶段,输入的是中间文件*.i,编译后生成汇编语言文件*.s 。 这个阶段对应的GCC命令如下所示: ...

GCC编译选项参数介绍

gcc和g++分别是gnu的c和c++编译器,下面是整理的常用编译选项参数:#(1). -x: 设定文件所使用的语言,使文件后缀名无效,如下,执行完后生成test.o gcc -c -x c++ test.jpg #(2). -c: 只编译生成目标文件即*.o,只...

gcc编译生成静态链接库*.a文件的方法

编译后会生成test1.o test2.o test3.o三个目标文件。 2、然后用ar命令生成.a文件,如 ar crv test.a test1.o test2.o test3.o 我们知道静态库也称档案库,在此档案文件中实际上是收集了一系列的目标文件。...

Gcc 编译生成的h.gch文件

最近在用makefile编译文件时,编译完成发现当前目录下有一些.h.gch 文件,奇怪,上网查了以后,明白那是gcc为了优化编译速度。 如果一个文件里面包含的 .h 比较的情况下,对于修改不的头文件,gcc 可以先将.h...

gcc下.a库文件的编译生成和使用

(1)编译生成.o目标文件,如:gcc -c test.c  注:-c选项表示只编译生成.o目标文件. (2)使用ar命令生成.a库文件,如ar -rv libtest.a test.o  注:ar命令可以用来创建、修改库,也可以从库中提出单个模块。 ...

关于linux下无法用gcc编译c++代码的原因

通常我们写完代码之后都会使用命令gcc hello.c -o hello来编译hello.c代码,生成可执行文件hello,如果不指定可执行文件的名字是“hello”,则默认输出一个a.out的文件。注意这里不是说可执行文件名字是a,拓展名是...

gcc-c++-4.4.7-17安装 rpm包方式

前提: 已经安装gcc-4.4.7-17 若未安装请看上一篇文章: ...  所需安装包: 都可以从 ftp://mirror.switch.ch/mirror/centos/6/os/x86_64/Packages/ 下载到 gcc-c++-4.4.7-17.el6.x86

【Linux】如何使用gcc编译源代码时输出map文件?

熟悉Linux环境编程的童鞋,对gcc一定不是陌生,它可以高效地将C/C++代码编译成可执行文件。在嵌入式开发领域,gcc更是无比的强大,采用不同编译平台的gcc编译器,对应地就可以生成该平台的bin文件。由于gcc功能...

gcc编译问题:gcc后面既有-c又有-o是什么意思?比如gcc -c a.c -o a.o ,-o不是后面接生成的可执行文件名么

-c表示只编译(compile)源文件但不链接,把.c或.cc的c源程序编译成目标文件,一般是.o文件。 -o用于指定输出(out)文件名。不用-o的话,一般在当前文件夹下生成默认的a.out文件作为可执行程序。 例如 gcc -c test....

C/C++学习 - gcc编译过程查看汇编代码

包括:c, c++, java, ada等…GCC参数gcc平时有很多参数,在平时我编译程序的时候,都直接gcc -o object source.c就可以了。但是有一次我想查看我同样目的但是不同写法的两个代码是执行效率上是否有差别。所以我

Linux下gcc编译c程序生成可执行文件的过程

Linux下gcc编译c文件生成可执行文件 一、准备 hello.c 文件 1、在当前目录下新建c文件 $:vim hello.c 2、按i进入编辑模式。按esc退出编辑模式,输入源代码 #include &amp;amp;amp;lt;stdio.h&amp;amp;amp;gt...

解读gcc和g++编译器分别对c与c++文件影响

为什么需要解读gcc/g++编译器对c/c++文件的影响呢?由于系统内核一般是使用C语言来编写的,系统内核中用C语言实现了很多库。而上层应用程序有可能是用C++来开发,如果在内核库函数头文件中不用extern“C”来声明...

gcc编译c++程序

原来一直以为gcc是c的linux下的编译器,g++是c++的linux下的编译器,今天偶尔看到一个说明文档,大体内容是gcc已经不单纯的可以编译C语言,它支持C, C++, Objective-C, Fortran, Java, Ada的编译,如果不指名编译...

gcc g++ c++ mingw32-c++.exe mingw32-g++.exe mingw32-gcc.exe之间的关系

gcc.exe g++.exe c++.exe mingw32-c++.exe mingw32-g++.exe mingw32-gcc.exe gcc和g++都是GNU(组织)的一个编译器。误区一:gcc只能编译c代码,g++只能编译c++代码两者都可以,但是请注意:1.后缀.c的,gcc把它当作...

gcc编译生成动态链接库*.so文件的方法

gcc编译生成动态链接库*.so文件的方法。[添加日期:2006-7-20 0:57:00][文章作者:frog] [文章来源:www.linuxdiyf.com] 动态链接库*.so的编译与使用- -动态库*.so在linux下用c和c++编程时经常碰到,最近在网站找...

gcc程序编译过程和链接原理

一、C/C++文件的编译过程:先来看一下gcc的使用方法和常用选项 提示:gcc --help Ⅰ、使用方法:gcc [选项] 文件名Ⅱ、常用选项: 选项 含义 -v 查看gcc编译器的版本,显示gcc执行时的详细过程 -o ...

gcc编译成可执行程序

#gcc hello.c 该命令将hello.c直接生成最终二进制可执行程序a....从上面我们知道GCC编译源代码生成最终可执行的二进制程序GCC后台隐含执行了四个阶段步骤。 GCC编译C源码有四个步骤: 预处理-----> 编译 ----> 汇

GCC 编译命令

GCC 编译器在编译一个C语言程序时需要经过以下 4 步: 将C语言源程序预处理,生成.i文件。 预处理的.i文件编译成为汇编语言,生成.s文件。 将汇编语言文件经过汇编,生成目标文件.o文件。 将各个模块的.o文件...

Gcc编译流程分为了四个步骤:

Gcc编译流程分为了四个步骤:  1.预处理,生成编译文件(.文件):  Gcc –E hello.c –o hello.i  2.编译生成汇编代码(.s文件):  Gcc –S hello.i –o hello.s  3.汇编,生成目标文件(.o...

如何在虚拟机中linux系统用gcc编译并运行第一个C++程序

首先打开Terminal,一般系统都已安装了gcc,如果未安装就在命令行输入#apt-get install gcc命令,接着输入Y,系统就自己...输入命令 mkdir my_c++ 在根目录或者其他目录创建一个名叫my_c++的文件夹用来存放程序文...

64位的GCC 编译32位程序

64位的GCC 编译32位程序 编译32的程序,只需要加上-m32就可以了 gcc -m32 llong.c 但是提示下面的错误 /usr/bin/ld: 当搜索用于 /usr/lib/gcc/x86_64-linux-gnu/5/libgcc.a 时跳过不兼容的 -lgcc /usr/bin/...

使用GCC编译代码(附编译过程)

GCC是集成的,查看系统GCC版本的命令: gcc -v查看它的路径命令: which gcc下面开始使用GCC编译C语言代码1.使用Vim编写代码,还是使用上次(2009.6.5的)编译的代码: #include int main() { print

相关热词 c# 控件改了name c#枚举类型有什么用 c# 循环多线程 c#在什么情况用事件 c# exe 运行 静默 c#如何打开一组图片 c# sql 引用那些 c#引用py第三方库 c# 属性 结构体 c# 加小时