以下几节将讨论对 32 位和 64 位应用程序进行打包时的注意事项。
SPARC。新库和新程序的位置遵循32 位和 64 位库中介绍的标准约定。32 位库仍然位于相同位置,而 64 位库则会放在常规缺省目录下与体系结构有关的特定目录中。特定于 32 位和 64 位的应用程序的位置对于用户应保持透明。
这意味着 32 位库应放在相同的库目录中,64 位库应放在相应的 lib 目录下的 sparcv9 子目录中。
如果程序要求使用特定于 32 位或 64 位环境的版本,则情况会稍有不同,此时,应将这些程序放在其通常所在目录的相应 sparcv7 或 sparcv9 子目录中。
64 位库应放在相应的 lib 目录下的 amd64 子目录中。
如果程序要求使用特定于 32 位或 64 位环境的版本,则应将这些程序放在其通常所在目录的相应 i86 或 amd64 子目录中。
请参见应用程序命名约定。
打包选项包括为 32 位和 64 位应用程序创建特定的软件包或者将 32 位和 64 位版本合并到一个软件包中。如果创建了单个软件包,则应当针对软件包的内容使用子目录命名约定,如本章中所述。
如库和程序的位置中所述,32 位和 64 位应用程序可以放在平台特定的相应子目录中,而不是为同一个应用程序的 32 位和 64 位版本指定特定的名称,如 foo32 和 foo64。然后,可以使用包装(在下一节中进行介绍)来运行正确版本的应用程序。这样做的一个优点是用户无需了解具体版本(32 位或 64 位),因为系统会根据平台自动执行正确的版本。