64 位元系統環境的 32 位元和 64 位元應用程式64 位元系統環境的 32 位元和 64 位元應用程式

目錄

16.1. 執行期間支援
16.2. 軟體開發
16.3. Biarch 平台的軟體編譯
16.4. 核心規格

SUSE Linux EnterpriseŽ 可用於 64 位元平台。但這並不表示所有包含的應用程式都已移植到 64 位元平台。SUSE Linux Enterprise 支援在 64 位元系統環境中使用 32 位元應用程式。本章簡略說明這項支援在 64 位元 SUSE Linux Enterprise 平台的執行方式。它說明 32 位元應用程式的執行方式 (執行期間支援) 以及如何編譯 32 位元應用程式,讓它們在 32 位元和 64 位元兩種系統環境都可執行。另外,您可找到關於核心 API 和 32 位元應用程式如何在 64 位元核心下執行的相關資訊。

SUSE Linux Enterprise 是針對 64 位元平台 amd64 和 Intel 64 所設計的,讓現有的 32 位元應用程式「不需額外的設定即可在 64 位元環境中執行。」這項支援意謂您可以繼續使用偏好的 32 位元應用程式,無需等到對應的 64 位元連接埠上市。

執行期間支援執行期間支援

[Important]不同應用程式版本之間的衝突

如果應用程式有 32 位元和 64 位元兩種版本,同時安裝二種版本,一定會發生問題。在這種狀況下,可在兩種版本中選定一種來安裝並使用。

要正確執行,每一個應用程式都需要一些程式庫。不幸的是,這些程式庫的 32 位元和 64 位元版本,名稱都一樣。它們必須透過其他方法來區分彼此。

要保留與 32 位元版本的相容性,程式庫儲存在系統中的位置,與在 32 位元環境中的位置相同。在 32 位元和 64 位元環境中,libc.so.6 的 32 位元版本都位於 /lib/libc.so.6

所有 64 位元程式庫和物件檔案都位於名為 lib64 的目錄。您通常預期在 /lib/usr/lib/usr/X11R6/lib 之下找到的 64 位元物件檔案,現在放在 /lib64/usr/lib64 以及 /usr/X11R6/lib64 底下。這表示在 /lib/usr/lib/usr/X11R6/lib 之下,有預留空間給 32 位元程式庫使用,因而兩種版本的檔案名稱能夠保持不變。

32 位元 /lib 目錄的子目錄,如果其資料內容不取決於字組大小,也不會移動。例如,X11 字型仍然可以在 /usr/X11R6/lib/X11/fonts 底下的一般位置找到。此配置與 LSB (Linux Standards Base) 以及 FHS (File System Hierarchy Standard) 相容。