# Upgrade do 2006.1

## scyld

Witam Szanownych Forumowców.

Chcę zrobić upgrade ale nie jestem do końca pewien jak to ma krok po kroku wyglądać, tak aby czegoś nie popsuć. Zatem obecnie mam gcc-3.4.6 i glibc-2.3.6 i muszę skompilować gcc-4.1.1 i glibc-2.4.

Widzę to tak:

1. Kompilacja gcc

```
# emerge -uav gcc

# gcc-config i686-pc-linux-gnu-4.1.1

# source /etc/profile

# fix_libtool_files.sh 3.4.6

# emerge --oneshot -av libtool
```

2. Przebudowanie toolchaina a potem całości

```
# emerge -eav system

# emerge -eav world
```

3. Usunięcie starego kompilatora

```
# emerge -aC =sys-devel/gcc-3.4*
```

Muszę to zrobić na LAN serwerze, na którym cały czas ktoś pracuje - to znaczy jest samba, cups, apache, mysql, courier-imap(s) itp. dlatego również zastanawiam się jakie reperkusje będzie miała procedura upgradu dla działania systemu w związku z binarną niekompatybilnością binarek produkowanych przez stary i nowy kompilator i oczywiście czy opisana procedura jest właściwa i system jakoś ją przetrwa.

Wdzięczny będę za wszelkie informacje.

----------

## bartmarian

co do niekompatybilnosci binarek, ja z tysiaca zrobilem 500 (emerge -e world), zrobilem restart

wstalo i leci dalej, tylko nie traktuj tego jako ze wszystko jest zgodne, to raczej info ze

"u mnie dziala"  :Smile: 

----------

## Chaos Engine

 *scyld wrote:*   

> Witam Szanownych Forumowców.
> 
> Chcę zrobić upgrade ale nie jestem do końca pewien jak to ma krok po kroku wyglądać, tak aby czegoś nie popsuć. Zatem obecnie mam gcc-3.4.6 i glibc-2.3.6 i muszę skompilować gcc-4.1.1 i glibc-2.4.
> 
> Widzę to tak:
> ...

 

mi wystarczyło samo:

```
# emerge -uav gcc

# gcc-config i686-pc-linux-gnu-4.1.1

# source /etc/profile

# emerge -aC =sys-devel/gcc-3.4*

```

Nie przebudowywałem całego systemu.  Jedynie ręcznie poszczególne pakiety; za dużo roboty i zależności(mam małą partycję)

----------

## Gabrys

 *Chaos Engine wrote:*   

> Nie przebudowywałem całego systemu.  Jedynie ręcznie poszczególne pakiety; za dużo roboty i zależności(mam małą partycję)

 

Ostatnio gdzieś czytałem, że zaleca się pomimo wszystko przebudowanie wszystkiego, bo mogą wystąpić losowe i bliżej nieokreślone problemy.

----------

## ar_it

 *Gabrys wrote:*   

>  *Chaos Engine wrote:*   Nie przebudowywałem całego systemu.  Jedynie ręcznie poszczególne pakiety; za dużo roboty i zależności(mam małą partycję) 
> 
> Ostatnio gdzieś czytałem, że zaleca się pomimo wszystko przebudowanie wszystkiego, bo mogą wystąpić losowe i bliżej nieokreślone problemy.

 

Ja na razie zrobiłem 

```

emerge -e system
```

i jakoś nie che mi się robić 

```
 emerge -e world
```

Małe lenistwo.

Wszystko śmiga bez problemów. Co do przebudowania całego systemu,

to trochę mi się nazbierało, prawie 2 Gb paczek do ściągnięcia i chyba to zrobię jak będę miał trochę więcej czasu, narazie mi sie strasznie nie chce i ten brak czasu  :Smile: 

Pzdr

LL

----------

## Yaro

Witam.

Skoro upgrade do 2006.1 to wypadało by jeszcze uaktualnić profil   :Smile:  :

```
rm /etc/make.profile

ln -s /usr/portage/profiles/default-linux/amd64/2006.1 /etc/make.profile
```

Oczywiście zamiast amd64 wpisujesz swoją architekturę.

----------

## binas77

Witam !!

Właśnie przeszedłem na profil 2006.1. I co się stało... wywaliło mi sporo flag domyślnych - oto one:

```

gtk vorbis mp3 X encode mad xmms sdl truetype imlib ogg foomaticdb mpeg gif mikmod spell quicktime gstreamer xv eds qt4 qt3 motif jpeg png kde alsa arts

```

Wiem, że część jest mi zbędna, ale moje pytanie brzmi: Czy w nowym profilu one są zbędne- zwłaszcza qt4 kde gtk 

Nie wiem, czy dodawać je do make.conf, czy przekompilować world bez tych flag... proszę o poradę

POZDRAWIAM

----------

## Raku

 *binas77 wrote:*   

> Wiem, że część jest mi zbędna, ale moje pytanie brzmi: Czy w nowym profilu one są zbędne- zwłaszcza qt4 kde gtk 
> 
> Nie wiem, czy dodawać je do make.conf, czy przekompilować world bez tych flag... proszę o poradę

 

Odpowiem dość filozoficznie: jeśli ich nie używasz, to są zbędne. Jeśli ich jednak używasz, to są ci potrzebne. Ot, taka filozofia Gentoo.

----------

## binas77

 *Raku wrote:*   

>  *binas77 wrote:*   Wiem, że część jest mi zbędna, ale moje pytanie brzmi: Czy w nowym profilu one są zbędne- zwłaszcza qt4 kde gtk 
> 
> Nie wiem, czy dodawać je do make.conf, czy przekompilować world bez tych flag... proszę o poradę 
> 
> Odpowiem dość filozoficznie: jeśli ich nie używasz, to są zbędne. Jeśli ich jednak używasz, to są ci potrzebne. Ot, taka filozofia Gentoo.

 

Dobrze, to rozumiem, ale moje pytanie dokładnie brzmi: Dlaczego w nowym profilu wywalili te flagi jako domyślne, skoro w 2006.0 były   :Question:   :Question:   :Question: 

----------

## Raku

 *binas77 wrote:*   

> Dobrze, to rozumiem, ale moje pytanie dokładnie brzmi: Dlaczego w nowym profilu wywalili te flagi jako domyślne, skoro w 2006.0 były    

 

źle kierujesz to pytanie. lepiej zapytać o to developerów, a nie użytkowników systemu.

Od siebie mogę powiedzieć: może developerzy uznali, że lepiej będzie, jak użytkownik sam sobie zdefinuje zestaw niezbednych flag? Lepiej w domyślnych flagach mieć absolutne minimum niezbędne do działania systemu, a dobór reszty pozostawić użytkownikowi (czy chce mieć je globalnie, czy lokalnie przez package.use)

----------

## binas77

I ta odpowiedź mnie zadowala... dzięki Raku za prostą odpowiedź

----------

## soltys

 *Quote:*   

> The Gentoo Release Engineering team proudly announces the release of Gentoo Linux 2006.1, the second release of the year. Building on the strengths of previous releases and featuring all of Gentoo's well-documented flexibility, performance and portability, this release is now available on all supported architectures. The most popular architectures now use GCC 4.1, glibc 2.4 and baselayout 1.12.1, as well as including a new profile layout, with seperate desktop and server profiles. 

 

czyli mamy teraz w sumie 3 profile  :Razz:  2006.1 2006.1/desktop 2006.1/server  :Wink:  i tyle:D jesli komus nie sa potrzebne jakies ekstra flagi to samo 2006.1 wystarczy  :Wink:  ale dobrze jest korzystac z 2006.1/desktop  :Wink: 

----------

## yoshi314

teraz profile mozna przelaczac wygodniej:

eselect profile list

eselect profile set <profil>

----------

## aklys

Przyłączam się do głównego pytania tego wątku, na które jak dotąd nie padła odpowiedź: "jak bardzo niebezpieczne jest wykonanie 'emerge -e system/emerge -e world' na 'żywym' serwerze?".

Robię obecnie taką operację na swoim desktopie i to "trochę"  :Smile:  trwaaaaa. Wyłączenie serwera na cały dzień nie wchodzi w grę, a nie jestem pewien czy takie przekompilowanie wszystkiego w czasie pracy serwerów (m. in. postfix, postgresql, apache) jest bezpieczne. A jeśli nie jest, to jak w takim razie zabrać się do upgrejdu na takiej maszynie?

Dotychczas "przechodziłem" migrację z gcc 3.3 do 3.4, ale ona nie wymagała przebudowywania całości, można było skorzystać z revdep-rebuild i na czas jego działania zatrzymać usługi.

----------

## scyld

 *aklys wrote:*   

> Przyłączam się do głównego pytania tego wątku, na które jak dotąd nie padła odpowiedź: "jak bardzo niebezpieczne jest wykonanie 'emerge -e system/emerge -e world' na 'żywym' serwerze?".
> 
> Robię obecnie taką operację na swoim desktopie i to "trochę"  trwaaaaa. Wyłączenie serwera na cały dzień nie wchodzi w grę, a nie jestem pewien czy takie przekompilowanie wszystkiego w czasie pracy serwerów (m. in. postfix, postgresql, apache) jest bezpieczne. A jeśli nie jest, to jak w takim razie zabrać się do upgrejdu na takiej maszynie?
> 
> Dotychczas "przechodziłem" migrację z gcc 3.3 do 3.4, ale ona nie wymagała przebudowywania całości, można było skorzystać z revdep-rebuild i na czas jego działania zatrzymać usługi.

 

Będę musiał odpowiedzieć sobie sam...   :Smile: 

U mnie wszystko poszło całkowicie bez jakiegokolwiek problemu. Po wszystkim był tylko szybki restart demonów i tyle. Wtrakcie serwer używało mniej więcej 10-50 osób jednocześnie na różnych usługach.

W sumie przekompilowałem 346 pakietów.

----------

## Gabrys

Ja na desktopie przeemergowuję ponad 1100 pakietów i w sumie problemy miałem tylko z KDE, to znaczy w trakcie kompilacji jakiś bibliotek niektóre programy oparte o KDE przestawały działać. Innych problemów nie zauważyłem. Bo w sumie dopóki binarka działa, to sobie będzie działać. Jak już się wszystko przekompiluje to można zrestartować usługę i wtedy zatrzymasz tę binarkę na GCC-3.4 (której już nawet nie ma na dysku) i odpalisz tę na GCC4

----------

## chojny

Witam 

postanowilem uaktualnic gcc wiec zrobilem:

```
# emerge -uav gcc

# gcc-config i686-pc-linux-gnu-4.1.1

# source /etc/profile

# fix_libtool_files.sh 3.4.6

# emerge --oneshot -av libtool
```

pozniej wybralem profil i zaczely sie problemy, nie chcialem przekompilowywac systemu ale mplayer przestal dzialac (problemy z libz), obawiajac sie kolejnych problemow zabralem sie za rekompilacje.

problem polega na tym ze po przekompilowaniu pythona emerge wywala nastepujacy blad 

```
/usr/bin/python: error while loading shared libraries: libpython2.4.so.1.0: cannot open shared object file: No such file or directory
```

podobnie bylo z wgetem, ktory wymagal opensll'a skompilowanego chwile wczesniej a go nie znajdowal.

szczerze powiem ze zupelnie nie wiem co mam z tym zrobic. Prosze o pomoc.

pozdrawiam

----------

## sarven

posprawdzaj te biblioteki. ja pamiętam, że miałem jakiś problem tego typu. biblioteka istniała, ale plik miał troche inną nazwę. wystarczyło porobić dowiązania i śmiga.

----------

## kocoorek

http://www.gentoo.org/doc/pl/gcc-upgrading.xml

----------

## chojny

sarven z bibliotek pythona znalazlem libpython2.3.so.1.0 podlinkowanie jej pod libpython2.4.so.1.0 nic nie dalo...

kocoorek w tym howto nie ma nic czego bym nie zrobil.

----------

## sarven

bardziej się spodziewałem, że znajdziesz np. libpython2.4.so

u mnie tak było (tylko akurat nie z tą biblioteką)

----------

## chojny

ok, chyba znalazlem blad, przekleilem:

```
ln -s /usr/portage/profiles/default-linux/amd64/2006.1 /etc/make.profile
```

a problem polega na tym ze mam Atholona 1.4GHz czyli za zadne skarby nie jest to procesor 64bitowy;)

czesc pakietow sie skompilowala i to powodowalo krzaki, zmienilem profil, rekompiluje calosc i jak do tej pory bez wiekszych problemow.

pozdrawiam

----------

## noobah

Mam pytanie, czy wam też 

```
 emerge -uav gcc
```

 instaluje również glibc i dwa inne pakiety? U mnie wywaliło sie własnie na glibc. Wypluło błąd że we flagach powinno byc nptl nptlonly. Odpalilem emerge -uav gcc jeszcze raz a to mi mowi ze wszystko jest si! W sumie niedawno reemergowalem glibc w związku z przejściem na locale.gen  :Very Happy:  Podejrzewam ze gcc miało w zależnosciach glibc?

Zabrałem sie do emergeowania całego systemu (99 paczek) i po 2 godzinach kompilacji wszystko jest OK.

EDIT

Znowu się wywaliło na glibc. Bez sensu, skoro te flagi sa potrzebne, to dlaczego nie wystarczy że są w ebuildzie glibc? No nic, dopisałem do make.conf i odpaliłem znowu emerge -uav system. I pomyśleć że byłem na 60 pakiecie (z 99) i teraz znowu od początku leci.

EDIT 2

Dlaczego glibc się tak długo kompiluje? U mnie trwa to ponad godzinę!

----------

## msch

a co ty myslisz, ze glibc to jest jeden programik tak jak np. wget? to jest podstawa dzialnia twojego systemu chlopie!

----------

## vanbastek

 *chojny wrote:*   

> sarven z bibliotek pythona znalazlem libpython2.3.so.1.0 podlinkowanie jej pod libpython2.4.so.1.0 nic nie dalo...

 

Mało to estetyczne. Użyj revdep-rebuild.

----------

## kreon28

Mam pytanie odnosnie komendy :

```
emerge -e system
```

W trakcie trwania tego procesu, musialem wylaczyc komputer a po ponownym uurchomieniu Gentoo i wydaniu tej komendy - caly proces idzie od poczatku. Czy jest jakas mozliwosc aby rekompilacja rozpoczela sie od momentu przerwy ?

----------

## Gabrys

emerge --resume

To może nie zadziałać jeśli w trakcie emerge -e system trwały jakieś inne emerge'e.

----------

