静态编译与动态编译的区别
动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令。
优点:①缩小了执行文件本身的体积,②加快了编译速度,节省了系统资源。
缺点:①哪怕是很简单的程序,只用到了链接库中的一两条命令,也需要附带一个相对庞大的链接库;②如果其他计算机上没有安装对应的运行库,则用动态编译的可执行文件就不能运行。
静态编译就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库。所以其优缺点与动态编译的可执行文件正好互补。
转载于:https://blog.51cto.com/092118/1058678