Solaris

Solaris 11 中缺少 GCC,並且伺服器已部署(無法訪問 Internet)

  • June 12, 2017

我有一個特殊的問題,伺服器已經部署,它不再連接到網路。就其最初目的而言,它不需要任何 C/C++ 編譯工具,因此從未安裝過它們。

我已經檢查過了/usr/sfw/bin,但他們確實從那裡失去了..

我對 Solaris 環境不是很熟悉,但我似乎找不到 GCC 作為 Solaris 11 的“可安裝包”(類似於 debian 的 dpkg)。不過,似乎有一些適用於舊 Solaris 環境的東西。有沒有辦法在不使用網際網路連接和包管理器的情況下安裝這些工具?例如,是否有 DVD 映像可以用作包管理器的源?

我想執行一個我用 C++ 編寫的程序,但我無法在我的機器上編譯程式碼,因為我正在執行 64 位 x86 Linux 機器。

我可以訪問較舊的 Solaris 8 機器,即設置好,我用來創建靜態二進製文件(使用gcc 3.8)。程序執行,但是字元串格式出現了一些奇怪的行為,並且沒有按預期執行 - 在 Solaris 8 主機上看不到這種行為。

我可以從機器上複製庫,例如創建一個交叉編譯環境,但我不確定它是否那麼容易。例如,從動態連結的文件中,我看到我連結到了 libstdc++,但目標機器中缺少該連結。

所以我想知道我是否可以創建適當的交叉編譯環境?

/usr/sfw/bingcc與 Solaris 10 捆綁在一起的路徑。在 Solaris 11.1gcc上,安裝後可直接/usr/bin作為指向/usr/gcc/<version>/bin/gcc.

現在有 ips 包(.p5p文件)的磁碟數據格式,但我建議下載整個儲存庫(在 Solaris 11.1 下載頁面中查找Oracle Solaris 11.1 儲存庫映像)並創建自己的 ips 服務。有關詳細資訊,請參閱此部落格。這將允許安裝任何gcc依賴的包,以及可能仍然缺少您的任務的其他包。

引用自:https://serverfault.com/questions/535598