如果您从源代码构建应用程序(您将在后面的部分中对其进行深入研究),并且头文件位于一个非标准的位置,那么您可能需要在编译器命令中添加 -I 选项。作为一个示例,如果您的 ImageMagick 头文件位于 /opt/include/magick 中,添加 -I/opt/include/magick 作为编译器的开关。
非常深入地了解它
即将结束今天的 Unix 旅行。现在,您可以更容易地穿越 UNIX 的小路和背街了。如果您迷路了,只需要说“家,家,家(不要被 猎户星座 所欺骗)或者输入 cd 即可。请记住,您还可以使用 find 和 locate 来查找大多数文件,包括可执行文件、库和包含文件。
下午好,女士们、先生们。下次旅行将在 30 天后启程。
附录 A:选择一个标准,任何标准
您的 UNIX 操作系统附带的软件位于文件系统中适当的位置(可能存储在 /bin 或者 /lib 中的),而本地添加的软件则可能位于许多不同的位置。某些系统管理员将本地软件放在 /usr/local 中,而其他的系统管理员则使用 /opt 或者“optional,因为运行系统并不需要该软件。而且,某些管理员会转储 /usr/local/bin 或 /opt/bin 中所有的可执行文件、/usr/local/lib 或 /opt/lib 中所有的库,等等。
另一种方法(这是我更喜欢的范例)是为每一个本地添加的包创建一个根目录,特别是在这个包很大的情况下。例如,我将 MySQL V5 安装到 /usr/local/mysql5.0,将 Apache V2.2 安装到 /usr/local/apache2.2。每个包的安装程序都会在包的根目录中创建它自己的 bin、lib 和 man 目录。
这种方法有一个缺点,每个最终用户必须向他或她的 PATH 环境变量中添加许多 bin 目录。并且当这一需求并不是特别复杂时,通过在系统范围的 Shell 启动文件中扩展缺省的 PATH 设置,就可以解决这个问题。例如,Bash 系统范围启动脚本 /etc/profile,可能包含:
标签: