Niekompatybilne libGL.so (X <-> NVidia)
Bartosz Taudul
wolf42 at wp.pl
Tue Apr 6 19:56:55 CEST 2004
On Tue, Apr 06, 2004 at 07:45:09PM +0200, Radoslaw Zielinski wrote:
> # ClanLib 0.7 z -rDEVEL, budowany na nagłówkach z XFree86
> $ gcc /usr/lib/libclan*.so
> /usr/lib/libclanGL.so: undefined reference to `glXGetProcAddress'
> collect2: ld returned 1 exit status
>
> # NVidiowe libGL
> $ objdump -T /usr/lib/libGL.so | grep glXGetProcAddress
> 0001dd04 g DF .text 00000072 LIBGL glXGetProcAddressARB
>
> Efekt: aplikacja zlinkowana z -lclanApp -lclanGL -lclanDisplay
> -lclanCore (w środowisku GL z XFree86 + ClanLib linkowany z tym GL):
>
> $ rpm -qf /usr/lib/libGL.so
> XFree86-driver-nvidia-1.0.5336-2
> $ ./dupa
> ./dupa: relocation error: /usr/lib/libclanGL-0.7.so.0: undefined symbol: glXGetProcAddress
Program nie może się odwoływać bezpośrednio do glXGetProcAddress,
z przyczyn jak wyżej. Musi sobie adres tej funckji znaleść używając
jakichś czarów z dlopen. SDL udostępnia nawet wrapper na tą
funkcjonalność.
Podobnie nie wolno używać rozszerzeń OpenGL-a bez wcześniejszego
sprawdzenia (w czasie wykonywania programu) czy są one obsługiwane przez
sterownik. Niestety, niektórzy ignorują ten fakt i potem mamy takie
kwiatki jak bcond --with nvidia w foobillard.spec.
wolf
--
Bartek . - Szefie, można prosić klucz?
Taudul : - Szef to jest na jajach.
.:....................................................................
w o l f @ p l d - l i n u x . o r g .:. http://wolf.valkyrie.one.pl/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: </mailman/pipermail/pld-devel-pl/attachments/20040406/02425d48/attachment.sig>
More information about the pld-devel-pl
mailing list