http://blog.youkuaiyun.com/abc78400123/article/details/6827751
http://blog.youkuaiyun.com/cheungmine/article/details/7684800
gcc是C编译器;g++是C++编译器;linux下cc一般是一个符号连接,指向gcc;gcc和g++都是GUN(组织)的编译器。
后缀为.c的,gcc把它当作是C程序,而g++当作是c++程序;(处理方法:可以采用在C++文件中extern
"C"{#include "a.c"}方式处理。)
后缀为.cpp的,两者都会认为是C++程序;
编译可以用gcc/g++,编译阶段,g++会调用gcc;
链接可以用g++或者gcc
-lstdc++,gcc命令不能自动和C++程序使用的库联接。
g++ -c 只编译为目标文件;
ar -r libfile.a file.o 编译静态库
gcc -shared file.o -o libfile.so 编译动态库
链接库,-l或者直接全名
g++ -wl, -verbose 可以查看link的细节。-wl,表明后面的option为ld的option。