Unix操作系统常用选项
创始人
2024-06-28 16:11:49
0

Unix操作系统中,cc命令还提供了其他许多有用的命令行选项。借助于这些选项我们可以对编译过程进行进一步的控制,如使cc只完成某些阶段的编译工作,指定对头文件的搜索目录,指定对代码进行优化,指定在代码中加入一些供调试程序所用的信息,等等。下面我们分别讨论这些问题。

1.Unix操作系统仅生成目标文件

如果只想生成源文件的目标代码而不对这些代码进行链接,可以在cc命令行中加上-C选项。此时编译系将只生成与各源文件相对应的.o文件(目标文件)。
如:
$ cc -c myprog.c myfunc.s
将生成同myprog.c和myfunc.s相对应的目标文件myprog.o和myfunc.o。

2.Unix操作系统头文件搜索路径

当用户在C源程序中用# include指令包含了某个头文件时,根据文件名指定方法的不同,C编译系统将在不同的目录下去寻找指定的头文件:
在用尖括号(<>;)指定头文件名时,预处理程序将在Unix操作系统中存放头文件的标准位置(通常是/usr/include目录)寻找指定的头文件。

在用双引号(“”)指定投文件名时,预处理程序将先在Unix操作系统包含此头文件的C源程序所在的目录中(一般为当前目录),去查找该头文件。找不到时再到标准目录下去查找。在对于那些头文件既不在标准位置,又不在与C源程序同一目录时的情况怎么办呢?

为此,CC命令提供了-I(Include)选项,以供用户自己指定头文件所在地目录。例如,对于myfunc.c和myprog.c中所包含的头文件myprog.h,我们假定其后来被放在目录$HOME/include目录下,而这两个C文件则被放在$HOME/cfile目录下。此时在$HOME/cfile目录下对这两个C文件进行编译时,可使用如下命令:
$ cc -I #HOME/include myprog.c myfunc.c

此时对于这两个C文件中的#include "myprog.h",预处理程序将先在$HOME/cfile目录下,然后再$HOME/include目录下,***再Unix操作系统标准位置查找myprog.h。-I选项也能改变那些用尖括号(<>指定的头文件的搜索顺序,此时预编译程序将首先在-I指定的目录下,然后才在标准位置搜索。

-I选项可以多次重复使用。这样我们将能够指定多个非标准的头文件目录。由于用汇编语言进行编程是一件效率比较低的工作,用此种方法可以预期将获得比较高的效率。

关于Unix操作系统的知识,这次,我们就讲解到这里了。希望大家能够好好的学习Unix操作系统的知识。

【编辑推荐】

  1. 关于Unix操作系统用户命令
  2. 讲解Unix操作系统远程知识
  3. 解析几个Unix操作系统网络命令
  4. Unix操作系统即时通信
  5. Unix操作系统路漫漫

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
P2P的自白|我不生产内容,我... 现在一提起P2P,人们就会联想到正在被有关部门“围剿”的互联网理财服务。×租宝事件使得劳...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...