Gentoo Logo

Gentoo 1.4 升級指南

內容:

1.  開始之前

準備

對於你的 Gentoo 核心系統所做的主要升級,總是有可能發生意想不到的問題。開始這個程序之前最好先備分重要的資料。可能的話,試著挪出一大段時間來升級,這樣你才可以專心去做。所有你電腦上的軟體都必須要重新編譯。

其他的選擇

不是只有這個方法可以升級你的系統。你可以在別的分割區安裝新的 1.4 系統然後使用部分你系統上的設定值來替代。這個方法的優點是你在遇到問題時還可以繼續使用舊的系統。你可能也會決定不要完全升級你的系統。如果你決定你想要升級的話,就繼續讀吧。

一般注意事項

當程式碼列表需要執行 emerge 命令時,最好在參數加上 -p--pretend 來測試並確認之後的命令是照你所想的去做。

2.  升級就緒

盡量將 Portage 升級到最新版本

舊版的 Portage 讀不到某些現在 ebuild 使用的語法。如果你沒有至少是 2.0.44 的 Portage,試著升級 Portage。

原始碼 2.1:

# emerge sync
# emerge -u portage

注意: 如果你的 Portage 版本已經非常舊了,你會收到 "unscriptable object" 的錯誤訊息。閱讀並且跟著 /usr/portage/sys-apps/portage/files/README.RESCUE 的步驟。你的 Portage 安裝後將是最新版的。

準備共存的 GCC

在升級的過程中你將會安裝比較新版的 GCC。比 2.95.3-r8 還舊版的 GCC 沒有設計多個版本共存的功能。因此你必須至少將 GCC 升級到 2.95.3-r8。這也會對安裝 gcc-config 套件到你的系統產生有益的副作用,可以用來在已安裝不同版本的 GCC 間互相切換。

原始碼 2.2:

# emerge -u gcc

現在你可以看看 gcc-config 是否可以正確地運作︰

原始碼 2.3:

# gcc-config --get-current-profile

多數的 x86 系統會回到 i686-pc-linux-gnu-2.95.3。較舊的系統可能會回到 i586-pc-linux-gnu-2.95.3.

安裝 GCC 3

現在你可以安裝新版的 GCC 而不會傷害你現在使用的編譯器。看看 /usr/portage/sys-devel/gcc 裡 GCC ebuild 的版本至少要是 3.2.1-r6。選擇符合自己架構上標記為穩定的最高版本。看看 ebuild 檔案裡 KEYWORDS 的那一列,判斷 ebuild 在你的架構上是否穩定。如果在你的架構前面有標記~,表示那就是穩定的。假設 3.2.2 是最新的穩定版本,然後執行以下命令︰

原始碼 2.4:

# emerge /usr/portage/sys-devel/gcc/gcc-3.2.2.ebuild

更改設定檔

現在你需要更改兩個設定檔︰你的 gcc-config 設定檔還有 Portage 設定檔。

原始碼 2.5:

# cd /etc
# rm make.profile
# ln -s ../usr/portage/profiles/default-x86-1.4 make.profile (用你的架構取代 "x86" )

原始碼 2.6:

# gcc-config --list-profiles (注意剛剛安裝的版本,之後要用到它)
# gcc-config i686-pc-linux-gnu-3.2.2 (用上面的版本來取代)

重新編譯工具鏈

現在你需要用你新的編譯起去編譯你的核心工具鏈。如果你還是在原本的 shell 之下,你需要執行 gcc-config 要你做的 source /etc/profile。然後用你新的編譯器安裝 glibc 和 binutils︰

原始碼 2.7:

# emerge glibc binutils

警告: 這很像是你升級 2.2 或是更舊的 glibc 到 2.3。之後不要再降回去了。你不是用 glibc 2.3 編譯的軟體將會停止運作,那會使得你的系統不穩定。

用新的編譯器重新編譯你所有的東西

現在你可能要用新的編譯器重新編譯你電腦上所有的東西︰

原始碼 2.8:

# emerge -e world

注意: 如果這個命令在某一點出現錯誤了,你可以用 emerge --resume 去繼續你未完成的程序。這需要 Portage 2.0.47 或是之後的版本。



列印

最後更新 2003年三月3日

這份文件的原始版本已不再被維護

大綱: 升級舊有的 Gentoo 到 Gentoo 1.4 的方法

Robert Coie
Author

Jon Portnoy
Copy Editor

Meng-Chia Tsai
Translator

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Bytemark

Bytemark

Copyright 2001-2008 Gentoo Foundation, Inc. Questions, Comments? Contact us.