详细介绍Linux GCC系统静态链接
时间:2010-11-24 来源:mydear
在向大家详细介绍Linux GCC之前,首先让大家了解下GCC,然后全面介绍Linux GCC,希望对大家有用。Linux是由开发工具软件、编辑器软件、CPU图形用户界面、网络工具软件等组成的一个完整的软件包。Linux GCC下的库文件在命名时有一个约定,那就是应该以lib三个字母开头,由于所有的库文件都遵循了同样的规范,因此在用-l选项指定链接的库文件名时可以 省去lib三个字母。
也就是说Linux GCC在对-lfoo进行处理时,会自动去链接名为libfoo.so的文件。
-static选项,强制使用静态链接库
如果在/home/xiaowp/lib/目录下有链接时所需要的库文件libfoo.so和libfoo.a 为了让Linux GCC在链接时只用到静态链接库,可以使用下面的命令:
cc -o test test.c -L /home/xiaowp/lib -static -lfoo
选项-O可以告诉Linux GCC同时减小代码的长度和执行时间,其效果等价于-O1。
在这一级别上能够进行的优化类型虽然取决于目标处理器,但一般都会包括线程跳转(Thread Jump)和延迟退栈(Deferred Stack Pops)两种优化。
选项-O2告诉Linux GCC除了完成所有-O1级别的优化之外,同时还要进行一些额外的调整工作,如处理器指令调度等。
选项-O3则除了完成所有-O2级别的优化之外,还包括循环展开和其它一些与处理器特性相关的优化工作。
通常来说,数字越大优化的等级越高,同时也就意味着程序的运行速度越快。以上是Linux GCC系统命令。