假设需要将代码转换为 64 位,以下清单可能会有所帮助:
阅读整个文档,重点阅读转换为 LP64 的指导原则。
检查所有数据结构和接口,验证它们在 64 位环境中仍然有效。
在代码中包含 <sys/types.h>,以获取 _ILP32 或 _LP64 定义以及多种基本派生类型。
将函数原型以及具有非局部作用域的外部声明移到头文件中,并将这些头文件包含在代码中。
使用 -errchk=longptr64 选项运行 lint(1),并单独检查每个警告。请注意,并非所有警告都要求对代码进行更改。根据所进行的更改,可能还需要在 32 位和 64 位模式下再次运行 lint(1)。
除非提供的应用程序仅为 64 位,否则请将代码编译为 32 位和 64 位两种形式。
测试应用程序,方法是在 32 位操作系统上执行 32 位版本,在 64 位操作系统上执行 64 位版本。也可以在 64 位操作系统上测试 32 位版本,但这不是必需的。