Oracle Solaris Studio 12.2:Fortran 用户指南

3.4.107 –xaddr32[={ yes|no}]

(仅限 x86/x64)-xaddr32=yes 编译标志将生成的可执行文件或共享对象限制在 32 位地址空间。

按此方式编译的可执行文件会导致创建一个限制在 32 位地址空间的进程。如果指定了 -xaddr32=no,则会生成通常的 64 位二进制文件。如果未指定 -xaddr32 选项,则使用 -xaddr32=no。如果仅指定了 -xaddr32,则使用 -xaddr32=yes

此选项仅适用于支持 SF1_SUNW_ADDR32 软件功能的 Solaris 平台的 -m64 编译。由于 Linux 内核不支持地址空间限制,此选项在 Linux 上不可用。在 Linux 上将忽略 -xaddr32 选项。

在链接时,如果有一个目标文件是使用 -xaddr32=yes 编译的,则整个输出文件均缺省使用 -xaddr32=yes 进行编译。限制到 32 位地址空间的共享对象必须由在受限的 32 位模式地址空间内执行的进程来加载。有关详细信息,请参阅《链接程序和库指南》中的 SF1_SUNW_ADDR32 软件功能定义。