summaryrefslogtreecommitdiff
blob: 2f3188c8b6695df9eebf3e3f0120390cf2bccd63 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
<?xml version='1.0' encoding="UTF-8"?>
<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/ko/new-upgrade-to-gentoo-1.4.xml,v 1.3 2006/03/10 14:12:35 neysx Exp $ -->
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">

<guide link="/doc/ko/new-upgrade-to-gentoo-1.4.xml" lang="ko">

<title>젠투 1.4 업그레이드 가이드</title>

<author title = "저자">
  <mail link = "rac@gentoo.org">Robert Coie</mail>
</author>
<author title = "사본 편집자">
  <mail link = "avenj@gentoo.org">Jon Portnoy</mail>
</author>
<author title="번역자">
  <mail link="shavete@hotmail.com">shavete</mail>
</author>
<author title="편집자">
  <mail link="envia@chol.com">envia</mail>
</author>

<abstract>오래된 젠투 설치를 1.4로 업그레이드하는 방법</abstract>
<license/>
<version>0.3</version>
<date>2004년 10월 2일</date>

<chapter>
<title>시작하기 전에</title>
<section>
<title>준비하기</title>
<body>

<p>
Gentoo 시스템의 핵심부분을 업그레이드하기 때문에, 나중에 일어날 예상치 못한
문제의 가능성은 언제나 있다.  작업을 하기 전에 중요한 데이터를 모두 백업해
놓는 것은 현명한 행동이다. 가능하다면 많은 시간을 지금의 업그레이드 작업에
투자하여, 서두른다는 느낌을 받지 않도록 한다. 여러분의 컴퓨터에 있는 모든
소프트웨어를 다시 컴파일해야  것이다.
</p>

</body>
</section>
<section>
<title>다른 옵션</title>
<body>

<p>
지금의  방법이 여러분의 시스템을 업그레이드 하는 유일한 방법은 아니다.
여러분은 분리되어 있는 파티션에 새로운 1.4 시스템을 설치할 수도 있고, 기존
시스템의 설정의 일부분을 재사용할 수도 있다.  방법은 일종의 후퇴로서 도중에
기존의 시스템으로 돌아갈  있는 장점이 있다. 여러분은 시스템을
업그레이드하지 않기로 간단하게 결정할 수도 있다.
만약 여러분이 업그레이드를 원한다면, 계속 읽어라.
</p>

</body>
</section>
<section>
<title>일반적인 주의 사항</title>
<body>

<p>
code listing에 <c>emerge</c> 명령을 실행하라고 제안하는 경우에,
<c>-p</c>  <c>--pretend</c> 옵션을 이용하여 테스트한 후
그 명령이 여러분이 예상하는 결과를 가져올  확인하는 것이 좋다.
</p>

</body>
</section>
</chapter>

<chapter>
<title>업그레이드하기</title>
<section>
<title>최신 Portage 구하기</title>
<body>

<p>
현재 ebuild의 몇몇 문법은 오래된 버전의 Portage가 읽을  없다.
여러분은 적어도 Portage 2.0.44를 가지고 있어야 한다.
Portage를 업그레이드 해보자.
</p>

<pre caption="">
# <i>emerge --sync</i>
# <i>emerge -u portage</i>
</pre>

<note>
만약 여러분의 Portage가 굉장히 오래된 버전일 경우,
"unscriptable object" 라는 내용을 담은 에러 메세지를 보게  지도 모른다.
<path>/usr/portage/sys-apps/portage/files/README.RESCUE</path>에
나오는 지시를 읽어보고 따라하라. 최신 Portage가 설치되어야 한다.
</note>

</body>
</section>
<section>
<title>여러 버전을 함께 사용할  있는(cohabitant) GCC 준비하기</title>
<body>

<p>
여러분은 업그레이드 과정에서  최신의 GCC를 설치할 것이다.
2.95.3-r8보다 오래된 버전의 GCC는 여러 버전을 함께 사용할  있도록
제작되지 않았다. 따라서 여러분은 적어도 2.95.3-r8버전의 GCC를 업그레이드해야
한다.  작업을 통해 시스템에 <c>gcc-config</c> 패키지를 설치하는 유익한
부수효과를 얻을  있다.  패키지는 설치된 GCC 중에  버전  버전 골라서
사용할  있도록 해준다.
</p>

<pre caption="">
# <i>emerge -u gcc</i>
</pre>

<p>
아래와 같이 명령을 입력하여 gcc-config가 제대로 작동하는  확인할  있다.
</p>

<pre caption="">
# <i>gcc-config --get-current-profile</i>
</pre>

<p>
대부분의 x86 시스템에서는 i686-pc-linux-gnu-2.95.3와 같은 결과를 얻을  있다.
오래된 시스템에서는 i586-pc-linux-gnu-2.95.3라고 나올 수도 있다.
</p>

</body>
</section>
<section>
<title>GCC 3 설치하기</title>
<body>

<p>
이제 여러분은 현재 설치되어 있는 GCC에 아무런 손상을 주지 않고 새로운 버전의
GCC를 설치할  있다. <path>/usr/portage/sys-devel/gcc</path> 안에서 적어도
3.2.1-r6이상의 GCC ebuild를 찾아본다. 여러분의 아키텍쳐 위에서 안정적이라고
표시된 버전 중에서 가장 높은 버전을 선택한다. 여러분의 아키텍쳐 위에서
안정적이라고 간주되는지 확인하려면 ebuild 파일 안의 KEYWORDS줄을 살펴보아라.
만약 KEYWORDS줄에 여러분의 아키텍쳐가 앞에 '~'표시 없이 나와 있다면,
안정적이라는 의미이다. 3.2.2버전이 가장 안정된 버전이라고 가정하고,
먼저 gcc의 glibc 의존성을 없앤다.
</p>

<p>
<path>/usr/portage/sys-devel/gcc/gcc-3.2.2.ebuild</path> 열고
<c>DEPEND</c> 포함하는 줄을 찾는다.
<c>glibc</c>의존성을 없애고 이빌드를 저장한다.
</p>

<pre caption="gcc-3.2.2.ebuild 편집하기">
# <i>vim /usr/portage/sys-devel/gcc/gcc-3.2.2.ebuild</i>
</pre>

<p>
이제 최신 GCC를 여러분의 시스템에 설치한다.
</p>

<pre caption="">
# <i>USE="-java" emerge /usr/portage/sys-devel/gcc/gcc-3.2.2.ebuild</i>
# <i>emerge /usr/portage/sys-devel/gcc/gcc-3.2.2.ebuild</i>
</pre>

</body>
</section>
<section>
<title>profiles 변경하기</title>
<body>

<p>
이제 여러분은 gcc-config profile과 Portage profile을 변경해야 한다. 
</p>

<pre caption="">
# <i>cd /etc</i>
# <i>rm make.profile</i>
# <i>ln -s ../usr/portage/profiles/default-x86-1.4 make.profile</i> <comment>("x86"을 여러분의 아키텍처로 교체하라)</comment>
</pre>

<pre caption="">
# <i>gcc-config --list-profiles</i> <comment>(여러분이 방금 emerge한 버전을 기록하고 아래에서 사용하라)</comment>
# <i>gcc-config i686-pc-linux-gnu-3.2.2</i> <comment>(버전을 여러분이 기록한 것으로 바꾸라)</comment>
</pre>

</body>
</section>
<section>
<title>툴체인 다시 컴파일하기</title>
<body>

<p>
이제 여러분은 여러분의 핵심 툴체인을 새로운 컴파일러를 이용하여
다시 컴파일해야 한다. 같은  위에서 계속 작업하기를 원한다면,
gcc-config가 여러분의 환경에 적용되도록 <c>source /etc/profile</c>을
실행해야 한다. 아래와 같이 명령하여 glibc와 binutils를 새로운 컴파일러를
이용하여 다시 설치(emerge)한다.
</p>

<pre caption="">
# <i>emerge glibc binutils</i>
</pre>

<warn>
2.2나  오래된 버전의 glibc에서 2.3버전으로 업그레이드하는 경우가
대부분일 것이다. 업그레이드 후에 다운그레이드하지 말아라.
다운그레이드 작업은 glibc 2.3버전을 기반으로 컴파일된 소프트웨어가
작동하지 않게 만들 것이며, 여러분의 시스템을 쓸모 없게 만들 것이다.
</warn>

</body>
</section>
<section>
<title>새로운 컴파일러를 이용하여 모든 소프트웨어 다시 컴파일하기</title>
<body>

<p>
이제 여러분은 아래와 같이 명령을 실행하여 여러분의 시스템에 있는 모든 것을
새로운 컴파일러를 이용하여 다시 컴파일할  있다.
</p>

<pre caption="">
# <i>emerge -e world</i>
</pre>

<note>
만약에  명령이 에러로 인해 실패한다면,
실패한 지점부터 작업을 다시 시작하기 위해 <c>emerge --resume</c> 명령을
이용할  있다.  작업은 Portage 2.0.47이나  이상의 버전을 요구한다.
</note>

</body>
</section>
</chapter>
</guide>