安装g++ : yum install gcc-c++ libstdc+±devel
编译c++文件采用g++
C++程序编译四步骤:
- g++ -E test.c -o test.i
- g++ -S test.i -o test.s
- g++ -c test.s -o test.o
- g++ test.o -o test
预处理->编译和优化->汇编->链接
一步生成最终可执行程序**:
- g++ test.c -o test
在链接阶段:
- gcc和g++都可以自动链接到标准C库
- g++可以自动链接到标准C++库,gcc如果要链接到标准C++库需要加参数-lstdc++
gcc常用参数:
- -v 查看gcc版本号,–version也可以
- -E 生成预处理文件
- -S 生成汇编文件
- -c 只编译,生成.o文件,通常称为目标文件
- -I(大写i) 指定头文件所在路径目录
- -L 指定库文件所在的路径
- -l 指定库的名字
- -o 指定生成的目标文件的名字
- -g 包含调试信息,使用gdb调试需要添加-g参数
- -On n = 0~3 编译优化,n越大优化的越多
静态库文件的制作过程:
-
将.c文件生成.o文件
gcc -c add.c divd.c mul.c sub.c
-
使用ar命令将.o文件打包成静态库文件
ar rcs libtest1.a(静态库文件名) add.o divd.o mul.o sub.o
-
使用库文件
gcc -o main1(生成的文件名) main.c -I ./ -L ./ -libtest1
动态库的制作:
-
将.c文件生成.o文件
gcc -fpic -c add.c divd.c mul.c sub.c
-
使用gcc将.o文件编译成动态库文件
gcc -shared add.o divd.o mul.o sub.o -o libtest2.so