C++基础之C++编译调试

2021-03-20 00:26

阅读:447

标签:编译   出错   参数   选项   否则   std   汇编语言   ima   core   

C++程序的实现(预处理,编译,连接)
Linux平台编译
gcc和g++都是GNU的编译器。
1、对于.c后缀的文件,gcc把它当做是C程序;g++当做是C++程序;
2、对于.cpp后缀的文件,gcc和g++都会当做c++程序。
3、使用g++编译文件时,g++会自动链接标准库STL,而gcc不会自动链接STL。
test.cpp
技术图片
?gcc/g++ 在执行编译时,需要4步
1 预处理,生成.i的文件[使用-E参数]
2 将预处理后的文件不转换成汇编语言,生成文件.s[使用-S参数]
3 有汇编变为目标代码(机器代码)生成.o的文件[使用-c参数]
4 连接目标代码,生成可执行程序[使用-o参数]
技术图片
注意:如果用gcc编译C++源文件时,加选项:-lstdc++,否则使用了C++操作的文件编译会出错
技术图片
g++常用的编译选项
技术图片
技术图片
Gdb
技术图片
技术图片
技术图片
core文件设置
ulimit -c unlimited?
?
gdb test core?

C++基础之C++编译调试

标签:编译   出错   参数   选项   否则   std   汇编语言   ima   core   

原文地址:https://blog.51cto.com/14985843/2547164


评论


亲,登录后才可以留言!