Zaloguj się

Jog Jajcusia

xmpp:jajcus@jajcus.net

Powrót na stronę główną

Rewolucja w kompie

Niedawno pojawiło się nowe XFCE: 4.4. Najpierw chciałem to w pracy sobie zainstalować, ale okazało się, że ani tego nie ma w PLD Ac, ani nie da się w tym Ac zainstalować. Instalacji Th wolałem nie ryzykować na maszynie która służy mi do pracy... co innego w domu, tam ostatnio używam jedynie CJC i Firefoksa. Uznałem, że dwie aplikacje jakoś do działania doprowadzę.

Upgrade nie był prosty. Masy rzeczy w repo Th brakuje. Wiele zależności jest zepsutych. Cała masa pakietów zbudowanych w Ac wymaga X11-*, albo XFree86-*, których w Th już nie ma (wystarczyłyby zależności od libX*, które pociągnęłyby odpowiednie pakiety xorg-*). Dodatkowo, żeby nie było za prosto, mam u siebie pomieszane pakiety 32- i 64-bitowe. Ale jakoś się udało...

Pierwsze co chciałem odpalić, to Xy. W końcu dla nowego XFCE jest ta cała szopka... Poprzednio używałem 64-bitowego X-serwera i zamkniętych sterowników ATI. Otwarte nie dawały akceleracji, a zamknięte nie działały, gdy X-serwer był 32-bitowy (generalnie większość systemu mam 32-bitowe), a kernel 64-bitowy (bo tylko taki pozwala mi odpalać binarki i 32- i 64-bitowe). Teraz chciałem spróbować z serwerem 32-bitowym i sterownikami Open Source, w końcu między X.org 7.0, a 7.2 coś mogło się zmienić...

Jedno się nie zmieniło – sterownik z X.org wciąż nie rozpoznaje mojej karty (ATI Technologies Inc RV370 secondary [Sapphire X550 Silent]) i obsługuję ją dopiero po dodaniu do xorg.conf: ChipId 0x5b60. Akceleracja 3D też nie ruszyła, chociaż sterownik DRM w kernelu się załadował i kartę poprawnie wykrył... logi sugerowały, że znowu może być coś z tymi bitami... Zainstalowałem więc 64-bitowy X-serwer z 64-bitowymi sterownikami. DRI ruszyło. Rozszerzenie "Composite" też. Mogłem podziwiać piękną przezroczystość w XFCE. Najpierw działało to strasznie wolno, ale po poprawieniu paru opcji da się tego używać. Jednak z OpenGL coś wciąż było nie tak... mimo że glxinfo pokazywało, że wszystko jest OK i nawet Direct rendering: yes. To glxgears nie działało. Znaczy się działało, ale nic nie wyświetlało. Podobnie wszystkie inne aplikacje 3D...

Spróbowałem więc zamkniętych sterowników... musiałem przebudować, bo w Th były stare, niekompatybilne z nowymi Xami. Nowe się zbudowały, nawet działały, ale bez akceleracji 3D. Linker dynamiczny nie mógł znaleźć jakiegoś symbolu od DRI w modułach X-serwera... pewnie te zamknięte binarki nie są zgodne z naszym buildem X.org... no cóż, tym razem lepiej wypadły sterowniki otwarte.

Wróciłem do otwartych sterowników i spróbowałem jeszcze czegoś: zainstalowałem 64-bitowe glxgears... i ruszyło. Czyli tym razem, pod 64-bitowym kernelem, nie tylko X-serwer musi być 64-bitowy, ale i wszystkie aplikacje OpenGL. Przykre... ale chwilowo mogę z tym żyć. Ostatnio i tak wiele takich aplikacji nie używam. Właściwie, to tylko StepManię.

Dzisiaj więc postanowiłem sobie skompilować StepManię na 64-bity. Środowisko do budowania zrobiłem sobie w chroocie z czystym 64-bitowym Th. Zainstalowałem co StepMania potrzebowała i zacząłem budowanie. Od razu się wykrzaczyło... SM jest w C++, a C++ ma to do siebie, że kod napisany dla starszego kompilatora często nie da się skompilować nowszym. W PLD Th mamy GCC 4.2 i to GCC kodu StepManii nie polubiło. Jednak potrzebnych poprawek nie było dużo i większość z nich była nawet dla mnie (nie znającego i nie lubiącego C++) oczywista. W końcu się skompilowało. I nawet dało się uruchomić.

Skompilowana przez mnie StepMania działała, ale tak jakby nie do końca. Nie dało się wejść do ustawień gry, a rozpoczętej gry nie dało się wygrać. Jak się poprawnie przeszło którąś piosenkę, to maszyna puszczała ją od początku. Można by się było zajechać ;-). Podczas kompilacji widziałem warningi dotyczące, między innymi, strict aliasing rules, więc postanowiłem spróbować kompilacji z innymi opcjami. Okazało się, że skrypt configure StepManii na sztywno ma wpisane -O3. To już mogło sprawiać problemy. Zmieniłem na -O2 i dodałem -fno-strict-aliasing i całość skompilowałem od nowa. Podczas kompilacji ćwiczyłem sobie na tej niedorobionej binarce – ciekawie się gra, gdy komputer się czasem zagapi i nie zauważy, że się strzałkę wcisnęło na czas. ;-)

Po kilkunastu minutach miałem nową 64-bitową binarkę gotową. I tym razem działa dobrze. To sobie jeszcze kiedyś poskaczę. :-)

W kolejce czeka zbudowanie GComprisa dla Krysi, bo stare wyleciało razem z Ac (w Th tego brak).


Komentarze

ola

02 lutego 2007 22:11:58

to co tam u Ciebie Jacuś?:)

Jajcuś

02 lutego 2007 22:12:55

A co, nie da się tego czytać? ;-)

ola

02 lutego 2007 22:13:47

jeszcze nie próbowałam ale jutro będę twarda:)

diablo.kuba

02 lutego 2007 22:21:11

Ja też instaluje sobie TH :) a nóż widelec naucze sie czegoś nowego :). Jedno jest pewne jak wszystko będzie mi działało nie będe robił upgrade :)

diablo.kuba

02 lutego 2007 22:26:29

PS. Widze nie tylko mnie skusiło nowe xfce ___

arekm

03 lutego 2007 08:45:05

Czego konkretnie brakuje i o które zależności chodzi? Dobuduje się.

Co do zależności Xorgowych to jedynym wyjściem jest metapackage-xorg (powinna leżeć na ftpie th).

rash

03 lutego 2007 12:14:08

Jajcuś i DDR? omujborze.. ;)

Jajcuś

03 lutego 2007 12:14:59

rash: coś nie tak? Nie można cały czas siedzieć przed kompem… trzeba się czasem poruszać ;-)

rash

03 lutego 2007 12:15:41

Znaczy.. Jakoś tak mi nie pasujesz :D

Poza tym, jakby nie patrzeć – ten ruch to i tak przed kompem jest :D

Dodaj nowy komentarz

Dostępne jest formatowanie Textile

Podpis:
Treść:
Strona WWW (opcjonalnie):
Wpisz kod:code
 
 

Śledzenie komentarzy (RSS) TrackBack URI


[szpieg] Jesteście obserwowani...