[HOW TO] Kompilacja Otwartych Sterowników

Awatar użytkownika
makson
Redaktor
Redaktor
Posty: 1541
Rejestracja: 23 mar 2009, 07:10
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Xfce
Architektura: x86_64

[HOW TO] Kompilacja Otwartych Sterowników

Post autor: makson » 18 gru 2011, 20:05

Zgodnie z zapowiedzią przygotowuję poniższy poradnik w celu dokładnego opisania sposobu kompilacji otwartych sterowników (DRI) wprost z drzewa git pod Ubuntu 12.04 (wraz z odblokowanymi opatentowanymi technologiami).
Są to sterowniki jeszcze niestabilne i w zasadzie nadają się jedynie do testowania. Jeżeli użytkownicy Ubuntu 11.04 i 11.10 chcieliby testować takie sterowniki, to polecam to repozytorium ppa.
Poniższy poradnik jest napisany tak szczegółowo, że nawet osobie niewiedzącej o co chodzi, po przepisaniu wszystkich komend powinno wszystko działać. Jeżeli chcecie zapoznać się z teorią otwartych sterowników to polecam ten artykuł.
1. Przygotowanie środowiska
Instalujemy biblioteki niezbędne do kompilacji:

Kod: Zaznacz cały

sudo apt-get build-dep libgl1-mesa-dri libdrm2

Kod: Zaznacz cały

sudo apt-get install llvm-3.0-dev git libcairo2-dev mesa-utils libxcb-glx0-dev
Bardzo ważnym elementem sterowników opartych o Gallium3D jest kompilator llvm. Chcemy do kompilacji użyć najnowszej wersji (3.0) więc:

Kod: Zaznacz cały

sudo apt-get --purge remove llvm

Kod: Zaznacz cały

sudo ln -s /usr/bin/llvm-config-3.0 /usr/bin/llvm-config
Kolejnym ważnym elementem otwartych sterowników jest libdrm będący interfejsem do mechanizmów DRM jądra systemu. Nie będziemy korzystać z niezbyt świeżego libdrm, które jest w systemie. Najnowszą niestabilną wersję pobierzemy wprost z drzewa git:

Kod: Zaznacz cały

cd ~/Pobrane

Kod: Zaznacz cały

git clone git://anongit.freedesktop.org/mesa/drm
I kompilujemy:

Kod: Zaznacz cały

cd drm

Kod: Zaznacz cały

./autogen.sh

Kod: Zaznacz cały

./configure --enable-nouveau-experimental-api --enable-vmwgfx-experimental-api --prefix=/usr/local

Kod: Zaznacz cały

make

Kod: Zaznacz cały

sudo make install
2. Kompilacja Mesa3D
Pobieramy i kompilujemy najnowszą niestabilną Mesa wprost z drzewa git mesa master.

Kod: Zaznacz cały

cd ~/Pobrane

Kod: Zaznacz cały

git clone git://anongit.freedesktop.org/mesa/mesa

Kod: Zaznacz cały

cd mesa

Kod: Zaznacz cały

./autogen.sh

Kod: Zaznacz cały

./configure --enable-texture-float --with-dri-drivers=i915,i965,radeon,r200,swrast --with-gallium-drivers=i915,nouveau,r300,r600,svga,swrast
Uwaga! Po "--with-dri-drivers=" wymieniamy te sterowniki oparte o klasyczną Mesa, które chcemy instalować. Po "--with-gallium-drivers=" wymieniamy te sterowniki oparte o Gallium3D, które chcemy instalować. Możemy podać wszystkie tak jak w przykładzie powyżej, lub tylko jeden, który nas interesuje.

Kod: Zaznacz cały

make
3. Wymiana sterowników
Pozostało nam już tylko ustawienie dla systemu ścieżki do nowych sterowników. Gdy nasz sterownik oparty jest o klasyczną Mesa to:

Kod: Zaznacz cały

echo -e "LIBGL_DRIVERS_PATH=$HOME/Pobrane/mesa/lib" >> ~/.pam_environment
gdy o Gallium3D to:

Kod: Zaznacz cały

echo -e "LIBGL_DRIVERS_PATH=$HOME/Pobrane/mesa/lib/gallium" >> ~/.pam_environment
Teraz 32 bitowcy:

Kod: Zaznacz cały

sudo mv /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.back
sudo cp ~/Pobrane/mesa/lib/libGL.so.1 /usr/lib/i386-linux-gnu/mesa/libGL.so.1.2
sudo mv /usr/lib/i386-linux-gnu/libGLU.so.1.3.08000 /usr/lib/i386-linux-gnu/libGLU.so.1.3.08000.back
sudo cp ~/Pobrane/mesa/lib/libGLU.so.1.3.08000 /usr/lib/i386-linux-gnu/libGLU.so.1.3.08000
sudo cp ~/Pobrane/mesa/lib/libglsl.so /usr/lib/i386-linux-gnu/
sudo cp ~/Pobrane/mesa/lib/libdricore.so /usr/lib/i386-linux-gnu/
I 64 bitowcy:

Kod: Zaznacz cały

sudo mv /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2 /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.back
sudo cp ~/Pobrane/mesa/lib/libGL.so.1 /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2
sudo mv /usr/lib/x86_64-linux-gnu/libGLU.so.1.3.08000 /usr/lib/x86_64-linux-gnu/libGLU.so.1.3.08000.back
sudo cp ~/Pobrane/mesa/lib/libGLU.so.1.3.08000 /usr/lib/x86_64-linux-gnu/libGLU.so.1.3.08000
sudo cp ~/Pobrane/mesa/lib/libglsl.so /usr/lib/x86_64-linux-gnu/
sudo cp ~/Pobrane/mesa/lib/libdricore.so /usr/lib/x86_64-linux-gnu/
Następnie restart kompa i wynik komendy

Kod: Zaznacz cały

glxinfo | grep OpenGL
powinien wyglądać podobnie do tego:
Obrazek
To wszystko. Od teraz twój komputer działa na sterownikach wprost z mesa master.
4. Uwagi końcowe
1. Nie zapomnij o rozszerzeniu możliwości otwartych sterowników o obsługę S3TC
2. Jest bardzo fajne i proste graficzne narzędzie do konfiguracji otwartych sterowników. Doinstalujesz je poleceniem:

Kod: Zaznacz cały

sudo apt-get install driconf
3. Użytkownicy 64 bitowych systemów macie pecha. 32 bitowe aplikacje (większość komercyjnych gier) będzie nadal korzystać z 32 bitowej wersji Mesa (która przyjdzie wraz z bibliotekami "ia32libs" i będzie to zwykła systemowa Mesa). Kompilacja krzyżowa 32 bitowej Mesa wychodzi poza zakres tego poradnika.
5. Kompilacja sterowników DDX do Xorga
Chociaż zdecydowana większość ciekawych zmian w otwartych sterownikach ma miejsce w przestrzeni DRI, to jednak można też skompilować sobie najnowsze sterowniki DDX dla X-Servera prosto z drzewa Git.

Przygotowujemy środowisko:

Kod: Zaznacz cały

apt-get build-dep xserver-xorg-video-ati xserver-xorg-video-intel xserver-xorg-video-nouveau

Jeżeli mamy kartę graficzną Radeon to pobieramy kod sterownika:

Kod: Zaznacz cały

cd ~/Pobrane
git clone git://anongit.freedesktop.org/xorg/driver/xf86-video-ati
cd xf86-video-ati
Dla kart graficznych Intela:

Kod: Zaznacz cały

cd ~/Pobrane
git clonegit://anongit.freedesktop.org/xorg/driver/xf86-video-intel
cd xf86-video-intel
Dla kart graficznych Nvidia:

Kod: Zaznacz cały

cd ~/Pobrane
git clone git://anongit.freedesktop.org/nouveau/xf86-video-nouveau
cd xf86-video-nouveau
Dla kart graficznych SIS:

Kod: Zaznacz cały

cd ~/Pobrane
git clone git://anongit.freedesktop.org/xorg/driver/xf86-video-sis
cd xf86-video-sis
Dla kart graficznych Chrome:

Kod: Zaznacz cały

cd ~/Pobrane
git clone git://anongit.freedesktop.org/openchrome/xf86-video-openchrome
cd xf86-video-openchrome
Uniwersalne sterowniki, które powinny działać na każdej karcie graficznej, ale nie zapewniają akceleracji 2D.
Frame Buffer:

Kod: Zaznacz cały

cd ~/Pobrane
git clone git://anongit.freedesktop.org/xorg/driver/xf86-video-fbdev
cd xf86-video-fbdev
lub VESA:

Kod: Zaznacz cały

cd ~/Pobrane
git clone git://anongit.freedesktop.org/xorg/driver/xf86-video-vesa
cd xf86-video-vesa
Następnie kompilujemy sterownik:

Kod: Zaznacz cały

./autogen.sh --prefix=/opt/xorg
make
sudo make install
Edytujemy lub tworzymy plik xorg.conf

Kod: Zaznacz cały

sudo gedit /etc/X11/xorg.conf
Umieszczamy w pliku następującą treść:

Kod: Zaznacz cały

Section "Files"
        ModulePath "/opt/xorg/lib/xorg/modules,/usr/lib/xorg/modules"
EndSection
Restartujemy X-Server i komputer powinien wstać na nowoskompilowanym sterowniku.

Pozdrawiam
Ostatnio zmieniony 23 kwie 2012, 11:42 przez makson, łącznie zmieniany 12 razy.
Miałem Linuksa, zanim stało się to modne.
Cieniek
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 109
Rejestracja: 14 cze 2007, 20:39
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86_64
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: Cieniek » 19 gru 2011, 10:53

Wszystko poszło bez problemu. Jedynie w punkcie 3 musiałem zmienić wersje pliku libGLU.so.1.3 (za pewne w związku z ppa xorg-edgers). Czy dla sterownika nouveau powinno się włączyć ARB_texture_float? Bo niestety u mnie nadal nie działa.
Awatar użytkownika
Jusko
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1380
Rejestracja: 21 gru 2007, 18:51
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64
Lokalizacja: Poznań
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: Jusko » 19 gru 2011, 12:40

Świetne. Można to gdzieś przykleić, aby nie zaginęło (choć w tym dziale, raczej nie powinno :)) Fajnie, że pamiętałeś o robieniu backupu - to może przydać się komuś :) Jak tylko znajdę chwilkę, poeksperymentuję na żywym systemie. Dla Mesy już pewnie rewelacji nie będzie, ale Gallium pchnęło nieco wszystko do przodu (ciągle bez rewelki, ale lepiej).
Awatar użytkownika
makson
Redaktor
Redaktor
Posty: 1541
Rejestracja: 23 mar 2009, 07:10
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [HOW TO] Kompilacja Mesa3D

Post autor: makson » 19 gru 2011, 18:45

Cieniek
Możliwe, że to jeszcze zależy od rodzaju karty, ale powinien i obsługuje (sam przetestowałem na GeForce 9600GT):
Obrazek
Najprawdopodobniej pogmatwałeś sobie sprawę repozytorium xorg-edgers - ich Mesa też przedstawia się jako 7.12-devel, ale nie odblokowują patentów.
Radzę Ci zainstalować czystą alpha 1, zaktualizować system i zastosować mój poradnik. Zwróć też uwagę, czy nigdzie po drodze Ci jakiś błąd nie wyskoczył.

Justko
Zeleży jeszcze od sterownika. Intelowski i965 oparty o klasyczną Mesa jest bardzo dopieszczony.

To jeszcze może mała legenda, który sterownik jest do czego.

Klasyczna Mesa:
i915 - (oficjalny) stare Intele: i915G/i915GM/i915GMS, i945G/i945GM (łącznie z GMA 950, GMA 3000, GMA 3100)
i965 - nowe Intele: jak nazwa wskazuje dla i965 i nowszych (łącznie z Sandy Bridge i Ivy Bridge)
radeon - stare ATI: Radeon VE, SDR, DDR / LE, 7000 / M6, 7200 (SDR / DDR), 7500
r200 - stare ATI: Radeon 8500 LE, 8500, 8700, 8800, 9000, 9000 Pro, 9100, 9200, 9200 SE, 9250
swrast - Software Rasterizer: niezależne sprzętowo przetwarzanie grafiki na procesorze

Gallium3D:
i915 - (nieoficjalny) stare Intele: i915G/i915GM/i915GMS, i945G/i945GM (łącznie z GMA 950, GMA 3000, GMA 3100)
nouveau - Wszystkie NVIDIA
r300 - stare ATI: Radeon 9500 i nowsze aż do wspieranych HD, ale bez HD.
r600 - nowe AMD: Wszystkie Radeony HD (aczkolwiek nadchodzące Radeony HD 7000 dostaną nowy sterownik)
svga - maszyna wirtualna VMWare (i jeden z najbardziej dopieszczonych sterowników na Gallium3D)
swrast - llvmpipe: niezależne sprzętowo przetwarzanie grafiki na procesorze (dużo wydajniejsze niż Software Rasterizer)
Miałem Linuksa, zanim stało się to modne.
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 3924
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: [HOW TO] Kompilacja Mesa3D

Post autor: jacekalex » 19 gru 2011, 19:32

nouveau - Wszystkie NVIDIA
Akurat, mimo mojej sporej sympatii dla Nouveau, średnio mu ta definicja "wszystkie" wychodzi.
Także jeszcze sporo wody w Wiśle upłynie, zanim Nouveau będzie stabilnym sterownikiem do wszystkich kart.
Sznurek: http://nouveau.freedesktop.org/wiki/FeatureMatrix

W mojej akceleracja 3D mu ostatnio w ogóle nie wychodzi.

Pozdro
:craz:
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
Cieniek
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 109
Rejestracja: 14 cze 2007, 20:39
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86_64
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: Cieniek » 19 gru 2011, 20:32

makson pisze:ich Mesa też przedstawia się jako 7.12-devel, ale nie odblokowują patentów.
Ich "version string" nie pokazywał (git-XXXX). Niemniej spróbuję zrobić jak radzisz.
Awatar użytkownika
makson
Redaktor
Redaktor
Posty: 1541
Rejestracja: 23 mar 2009, 07:10
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [HOW TO] Kompilacja Mesa3D

Post autor: makson » 19 gru 2011, 22:00

Nie twierdzę, że nie. Może po prostu twoja karta nie obsługuje tego rozszerzenia na tym sterowniku. Ciągle nie napisałeś jakiej karty używasz.
A tak na marginesie, to tak jak zaznaczył jacekalex NVIDIA to nienajlepszy wybór dla testowania otwartych sterowników...
Miałem Linuksa, zanim stało się to modne.
Awatar użytkownika
jacekalex
Gibki Gibbon
Gibki Gibbon
Posty: 3924
Rejestracja: 17 cze 2007, 02:54
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: MATE
Architektura: x86_64

Re: [HOW TO] Kompilacja Mesa3D

Post autor: jacekalex » 19 gru 2011, 22:48

Otwarte sterowniki z wyboru, brałbym do Intela, z konieczności, do starszych Radeonów.

Co do nowszych kart, to zarówno Nvidia jak i Ati mają 2 problemy z ujawnieniem kodu sterowników:
1. Strach przed ujawnieniem tajemnicy, którą może poznać konkurencja.
2. Kłopoty prawne wynikające z ujawnienia technologii DRM wbudowanej w te karty, gdzie właścicielem patentu na DRM jest ktoś inny, a NVidia i Ati tylko dodały kawałek tej technologii do swoich sterów.

A inżynieria wsteczna w odniesieniu do takich kombajnów, jak np GeForce, to nie jest ani łatwe ani szybkie zadanie, co wyraźnie widać w rozwoju Nouveau.

Także otwarte odpowiedniki sterów Nvidii czy Catalystów o możliwościach dorównujących zamkniętym sterom kiedyś powstaną, ale raczej nie za tydzień, i chyba nie w ciagu najbliższych 2 lat.

Pozdrawiam
:craz:
Problemy rozwiązujemy na forum nie na PW -> Niech inni na tym skorzystają.
Komputer jest jak klimatyzacja - gdy otworzysz okna, robi się bezużyteczny...
Linux User #499936
Inny OS: Gentoo Linux :)
Awatar użytkownika
e X t 7 3
Przyjaciel
Przyjaciel
Posty: 4940
Rejestracja: 07 maja 2009, 23:34
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: KDE Plasma
Architektura: x86_64
Lokalizacja: Kraków
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: e X t 7 3 » 21 gru 2011, 12:50

No ładnie musze przyznać ;). Choć można by się pokusić o zbudowanie paczek zamiast wykonywać "ręczne robótki" via mv ;).

Pozdrawiam
Nie ma rzeczy niemożliwych ... są tylko trudne do zrobienia ;)

Moje kernele oraz skrypty:

NeteXt'73 - instalator kerneli i skryptów oraz optymalizator systemu w jednym > netext73.pl
Cieniek
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 109
Rejestracja: 14 cze 2007, 20:39
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86_64
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: Cieniek » 21 gru 2011, 13:57

makson pisze:Nie twierdzę, że nie. Może po prostu twoja karta nie obsługuje tego rozszerzenia na tym sterowniku. Ciągle nie napisałeś jakiej karty używasz.
GF 7300GT. Jest jakiś sposób, żeby sprawdzić, czy to powinno na niej działać?
Awatar użytkownika
makson
Redaktor
Redaktor
Posty: 1541
Rejestracja: 23 mar 2009, 07:10
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [HOW TO] Kompilacja Mesa3D

Post autor: makson » 22 gru 2011, 22:54

@Cieniek
Jedyny sposób to metoda prób i błędów. Wydaje mi się jednak, że powinno.
Jak skompilujesz Mesa na czystym Ubuntu 12.04 (nie zapomnij o "--enable-texture-float") to będziesz widział, czy korzystasz z Mesy systemowej (7.11), czy skompilowanej (7.12-dev). To zdecydowanie rozstrzygnie sprawę.

P.S. Dokonałem serii benchmarków sterownika nouveau. Przygotujcie się na odpowiedni artykuł z wynikami w Czytelni ;) .

-- 22 gru 2011 23:50 --
e X t 7 3 pisze:No ładnie musze przyznać ;). Choć można by się pokusić o zbudowanie paczek zamiast wykonywać "ręczne robótki" via mv ;).

Pozdrawiam
Masz rację. Da się oszczędzić trochę pracy, ale zastosujemy inny brudny trick (wprowadzam poprawki w How To).

-- 05 lut 2012 20:23 --

Ostatni etap poradnika jest jednak trochę zepsuty. Zanim wykombinuję, jak to ładnie zrobić, to w terminalu należy wpisać:

Kod: Zaznacz cały

export LD_LIBRARY_PATH=$HOME/Pobrane/mesa/lib
I następnie wszystko co się uruchomi z tego terminala będzie na nowych sterach.
Pozdrawiam
Miałem Linuksa, zanim stało się to modne.
mati5000
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 29 gru 2011, 02:38
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: mati5000 » 14 lut 2012, 17:47

Witam u mnie wszystko przebiegło ok, ale jest małe ale... Vdrift czy jak sie tam ta gra zwie nie zadziałała, dlatego nie byłem do końca pewny czy wszystko poszło ok. System chodził lepiej, ale ta gra normalnie czarne rozmazane litery nie do odczytania, inaczej jakby wycięte tekstury, dziury. W czym problem?
PC Desktop: Debian Squeeze with kernel: 2.6.32-5 amd64 and Ubuntu 10.10 with kernel 2.6.35-22 x86
Notebook IBM T43: Lubuntu 14.04 with kernel: 3.13.0-29 x86
Awatar użytkownika
makson
Redaktor
Redaktor
Posty: 1541
Rejestracja: 23 mar 2009, 07:10
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [HOW TO] Kompilacja Mesa3D

Post autor: makson » 14 lut 2012, 18:18

A jaka karta graficzna i jaki wynik polecenia 'glxinfo'?
Miałem Linuksa, zanim stało się to modne.
mati5000
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 29 gru 2011, 02:38
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: mati5000 » 15 lut 2012, 09:39

Wywaliłem ubuntu 12.04, wgrałem 11.10
Wynik Polecenia podobny, ale chodzi jakby szybciej niz na 12 czyli beta jest do bani

powinno być ok?

Jakiego Benchmarka najlepiej użyć?
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_INTEL_swap_event
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_framebuffer_sRGB,
GLX_MESA_copy_sub_buffer, GLX_MESA_multithread_makecurrent,
GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap,
GLX_INTEL_swap_event
GLX version: 1.4
GLX extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_MESA_multithread_makecurrent, GLX_OML_swap_method,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_INTEL_swap_event
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 0x300)
OpenGL version string: 2.1 Mesa 8.0-devel (git-78734e3)
OpenGL shading language version string: 1.20
OpenGL extensions:
GL_ARB_multisample, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color,
GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_copy_texture,
GL_EXT_polygon_offset, GL_EXT_subtexture, GL_EXT_texture_object,
GL_EXT_vertex_array, GL_EXT_compiled_vertex_array, GL_EXT_texture,
GL_EXT_texture3D, GL_IBM_rasterpos_clip, GL_ARB_point_parameters,
GL_EXT_draw_range_elements, GL_EXT_packed_pixels, GL_EXT_point_parameters,
GL_EXT_rescale_normal, GL_EXT_separate_specular_color,
GL_EXT_texture_edge_clamp, GL_SGIS_generate_mipmap,
GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp,
GL_SGIS_texture_lod, GL_ARB_multitexture, GL_IBM_multimode_draw_arrays,
GL_IBM_texture_mirrored_repeat, GL_ARB_texture_cube_map,
GL_ARB_texture_env_add, GL_ARB_transpose_matrix,
GL_EXT_blend_func_separate, GL_EXT_fog_coord, GL_EXT_multi_draw_arrays,
GL_EXT_secondary_color, GL_EXT_texture_env_add, GL_EXT_texture_lod_bias,
GL_INGR_blend_func_separate, GL_NV_blend_square, GL_NV_light_max_exponent,
GL_NV_texgen_reflection, GL_NV_texture_env_combine4,
GL_SUN_multi_draw_arrays, GL_ARB_texture_border_clamp,
GL_ARB_texture_compression, GL_EXT_framebuffer_object,
GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_MESA_window_pos,
GL_NV_packed_depth_stencil, GL_NV_texture_rectangle, GL_ARB_depth_texture,
GL_ARB_occlusion_query, GL_ARB_shadow, GL_ARB_texture_env_combine,
GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3,
GL_ARB_texture_mirrored_repeat, GL_ARB_window_pos,
GL_EXT_stencil_two_side, GL_EXT_texture_cube_map, GL_NV_fog_distance,
GL_APPLE_packed_pixels, GL_APPLE_vertex_array_object, GL_ARB_draw_buffers,
GL_ARB_fragment_program, GL_ARB_fragment_shader, GL_ARB_shader_objects,
GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ATI_draw_buffers,
GL_ATI_texture_env_combine3, GL_ATI_texture_float, GL_EXT_shadow_funcs,
GL_EXT_stencil_wrap, GL_MESA_pack_invert, GL_MESA_ycbcr_texture,
GL_NV_primitive_restart, GL_ARB_fragment_program_shadow,
GL_ARB_half_float_pixel, GL_ARB_occlusion_query2, GL_ARB_point_sprite,
GL_ARB_shading_language_100, GL_ARB_sync, GL_ARB_texture_non_power_of_two,
GL_ARB_vertex_buffer_object, GL_ATI_blend_equation_separate,
GL_EXT_blend_equation_separate, GL_OES_read_format,
GL_ARB_pixel_buffer_object, GL_ARB_texture_compression_rgtc,
GL_ARB_texture_float, GL_ARB_texture_rectangle,
GL_ATI_texture_compression_3dc, GL_EXT_packed_float,
GL_EXT_pixel_buffer_object, GL_EXT_texture_compression_rgtc,
GL_EXT_texture_mirror_clamp, GL_EXT_texture_rectangle,
GL_EXT_texture_sRGB, GL_EXT_texture_shared_exponent,
GL_ARB_framebuffer_object, GL_EXT_framebuffer_blit,
GL_EXT_framebuffer_multisample, GL_EXT_packed_depth_stencil,
GL_ARB_vertex_array_object, GL_ATI_separate_stencil,
GL_ATI_texture_mirror_once, GL_EXT_draw_buffers2, GL_EXT_draw_instanced,
GL_EXT_gpu_program_parameters, GL_EXT_texture_compression_latc,
GL_EXT_texture_sRGB_decode, GL_OES_EGL_image, GL_ARB_copy_buffer,
GL_ARB_draw_instanced, GL_ARB_half_float_vertex, GL_ARB_instanced_arrays,
GL_ARB_map_buffer_range, GL_ARB_texture_rg, GL_ARB_texture_swizzle,
GL_ARB_vertex_array_bgra, GL_EXT_separate_shader_objects,
GL_EXT_texture_swizzle, GL_EXT_vertex_array_bgra,
GL_NV_conditional_render, GL_AMD_draw_buffers_blend,
GL_ARB_ES2_compatibility, GL_ARB_draw_buffers_blend,
GL_ARB_draw_elements_base_vertex, GL_ARB_explicit_attrib_location,
GL_ARB_fragment_coord_conventions, GL_ARB_provoking_vertex,
GL_ARB_sampler_objects, GL_ARB_shader_texture_lod,
GL_ARB_vertex_type_2_10_10_10_rev, GL_EXT_provoking_vertex,
GL_EXT_texture_snorm, GL_MESA_texture_signed_rgba, GL_ARB_robustness,
GL_ARB_texture_storage

72 GLX Visuals
visual x bf lv rg d st colorbuffer sr ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a F gb bf th cl r g b a ns b eat
PC Desktop: Debian Squeeze with kernel: 2.6.32-5 amd64 and Ubuntu 10.10 with kernel 2.6.35-22 x86
Notebook IBM T43: Lubuntu 14.04 with kernel: 3.13.0-29 x86
Awatar użytkownika
valdi74
Wytworny Kaczor
Wytworny Kaczor
Posty: 441
Rejestracja: 01 maja 2007, 12:58
Płeć: Mężczyzna
Wersja Ubuntu: 18.04
Środowisko graficzne: KDE Plasma
Architektura: x86_64
Lokalizacja: Poznań

Re: [HOW TO] Kompilacja Mesa3D

Post autor: valdi74 » 15 lut 2012, 09:53

Wyszła Mesa 8.0 http://osnews.pl/mesa-8-0-wydana/. Interesującą dla mnie nowością jest "zintegrowanie gałęzi Gallium3D pipe-video, udostępniający API VA-API oraz VDPAU". Obecnie odtwarzam filmy na zamkniętych sterownikach i działają bardzo ładne dopóki nie jest to H264 z poziomem >= 5.1. Niestety AMD nie zrobiło tego dobrze w Catalystach a mój procesor (E-450) nie radzi sobie z dekodowaniem programowym 1080p. Czytałem, że Gallium3D pipe-video wykorzystuje do dekodowania sprzętowego shadery (Catalysty działają na UVD, więc na pewno wydajniej). Jestem bardzo ciekaw czy nowa Mesa poradzi sobie z odtwarzaniem 1080p.
Awatar użytkownika
makson
Redaktor
Redaktor
Posty: 1541
Rejestracja: 23 mar 2009, 07:10
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [HOW TO] Kompilacja Mesa3D

Post autor: makson » 15 lut 2012, 10:10

@mati5000
Niby wszystko ok, ale zdajesz sobie sprawę, że nie korzystasz z karty graficznej, tylko z Programowego Renderowania?
Ciągle nie napisałeś jaką masz karty graficzną.
Co do benchmarków to proponuję się zapoznać z "phoronix test suite".
Miałem Linuksa, zanim stało się to modne.
mati5000
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 29 gru 2011, 02:38
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: mati5000 » 15 lut 2012, 10:13

valdi74 pisze:Wyszła Mesa 8.0 http://osnews.pl/mesa-8-0-wydana/. Interesującą dla mnie nowością jest "zintegrowanie gałęzi Gallium3D pipe-video, udostępniający API VA-API oraz VDPAU". Obecnie odtwarzam filmy na zamkniętych sterownikach i działają bardzo ładne dopóki nie jest to H264 z poziomem >= 5.1. Niestety AMD nie zrobiło tego dobrze w Catalystach a mój procesor (E-450) nie radzi sobie z dekodowaniem programowym 1080p. Czytałem, że Gallium3D pipe-video wykorzystuje do dekodowania sprzętowego shadery (Catalysty działają na UVD, więc na pewno wydajniej). Jestem bardzo ciekaw czy nowa Mesa poradzi sobie z odtwarzaniem 1080p.
Ja mam właśnie 8.0 zainstalowane

penGL vendor string: VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 0x300)
OpenGL version string: 2.1 Mesa 8.0-devel (git-78734e3)
OpenGL shading language version string: 1.20

Myślisz, ze mam to o co tobie chodzi?
makson pisze:@mati5000
Niby wszystko ok, ale zdajesz sobie sprawę, że nie korzystasz z karty graficznej, tylko z Programowego Renderowania?
Ciągle nie napisałeś jaką masz karty graficzną.
Co do benchmarków to proponuję się zapoznać z "phoronix test suite".
Jest to karta Ati Radeon X300/R300 w IBM T43
PC Desktop: Debian Squeeze with kernel: 2.6.32-5 amd64 and Ubuntu 10.10 with kernel 2.6.35-22 x86
Notebook IBM T43: Lubuntu 14.04 with kernel: 3.13.0-29 x86
Awatar użytkownika
luk1don
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1768
Rejestracja: 07 lis 2008, 16:17
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86

Re: [HOW TO] Kompilacja Mesa3D

Post autor: luk1don » 15 lut 2012, 10:19

Ty masz OpenGL version string: 2.1 Mesa 8.0-devel (git-78734e3)
a wyszła chyba stable...
Awatar użytkownika
makson
Redaktor
Redaktor
Posty: 1541
Rejestracja: 23 mar 2009, 07:10
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Xfce
Architektura: x86_64

Re: [HOW TO] Kompilacja Mesa3D

Post autor: makson » 15 lut 2012, 10:39

@luk1don
Mesa w git jeszcze nie jest oznaczona jako 8.1 (więc ciągle się przedstawia jako 8.0), ale ma już sporo nowości względem stabilnej 8.0.
mati5000
Wygląda na to, że nie skompilowałeś właściwego sterownika.
Spróbuj:

Kod: Zaznacz cały

cd ~/Pobrane/mesa
rm -r lib
make realclean
./configure --enable-texture-float --with-dri-drivers= --with-gallium-drivers=r300
make
I z tak przygotowanej mesa podaj wynik:

Kod: Zaznacz cały

glxinfo
Miałem Linuksa, zanim stało się to modne.
mati5000
Piegowaty Guziec
Piegowaty Guziec
Posty: 26
Rejestracja: 29 gru 2011, 02:38
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86
Kontakt:

Re: [HOW TO] Kompilacja Mesa3D

Post autor: mati5000 » 15 lut 2012, 11:14

OpenGL vendor string: X.Org R300 Project
OpenGL renderer string: Gallium 0.4 on ATI RV370
OpenGL version string: 1.4 (2.1 Mesa 7.11)
OpenGL extensions:

i wróciło do tego co było what?

Wróciłem do tego co było..
Ostatnio zmieniony 15 lut 2012, 13:54 przez mati5000, łącznie zmieniany 1 raz.
PC Desktop: Debian Squeeze with kernel: 2.6.32-5 amd64 and Ubuntu 10.10 with kernel 2.6.35-22 x86
Notebook IBM T43: Lubuntu 14.04 with kernel: 3.13.0-29 x86
Zablokowany

Wróć do „Precise Pangolin”