AIX平台RS6000程序编译与Makefile指南

需积分: 15 1 下载量 168 浏览量 更新于2024-07-15 收藏 59KB PPT 举报
"本资料主要介绍如何在AIX操作系统环境下编写Makefile,用于管理RS6000平台上的程序编译过程。内容涵盖了预备工作、Makefile的编写方法、运行时需要注意的问题,以及不同类型的编译文件如运行文件、静态库文件和动态库文件的创建。同时,讲解了AIX上C编译器的使用,包括cc、xlc和c89等,并列举了部分编译参数的含义。此外,还提到了Oracle预编译工具PROC的使用以及静态库和动态库的编译工具ar和ld的选项说明。" 在AIX系统下,编写Makefile是为了更有效地管理和自动化程序的编译过程。预备工作主要包括了解系统环境,熟悉C编译器的使用以及理解Makefile的基本语法。Makefile的编写涉及到规则定义、目标、依赖项和命令,确保编译规则的清晰和高效。 AIX平台上的程序编译涉及多种文件类型。运行文件是可执行程序,可以使用cc、xlc、xlc_r、xlC和xlC_r等编译器生成。静态库文件由ar工具创建,用于在编译时链接;动态库文件则通过ld链接绑定程序生成,用于运行时动态链接。C编译器如cc提供了丰富的参数选项,例如-o指定输出文件名,-c仅生成对象文件,-g生成调试信息,-I添加头文件搜索路径,-L添加静态库搜索路径等。 Oracle预编译工具PROC允许开发者将SQL语句嵌入C程序中,通过预编译将SQL转化为对Oracle运行库的调用。PROC的配置参数如define和config可指定特定的编译环境和配置文件。 在构建静态库时,ar工具是关键。其选项如-d用于删除库中的成员,-v显示详细信息,-r用于替换或更新库中的成员,-x用于提取库中的文件,-t则用于列出库中的成员。对于64位环境,可以使用-X3264选项。 动态库的生成则需要用到ld,它可以设置OBJECT_MODE参数来指定32位或64位模式。通过ld,可以处理导入和未定义的函数,生成全局符号表,实现动态链接。 本资料详尽地介绍了AIX环境下,特别是RS6000系统上,如何利用Makefile进行程序编译管理,以及如何使用各种编译和链接工具,对C程序员和系统管理员来说具有很高的参考价值。