Ubuntu: indirect rendering issue on 12.04, using ati driver



Question:

I have ubuntu 12.04 64-bit system, when i run glxinfo i see some strange error about indirect rendering and failed to load some lib32/dri/swrast_dri libraries.

Any idea what is going on?

please let me know if i can enhance the relevant information provided in this question

$ LIBGL_DEBUG=verbose glxinfo  name of display: :0  libGL: screen 0 does not appear to be DRI2 capable  libGL: OpenDriver: trying /usr/lib32/dri/tls/swrast_dri.so  libGL: OpenDriver: trying /usr/lib32/dri/swrast_dri.so  libGL error: dlopen /usr/lib32/dri/swrast_dri.so failed (/usr/lib32/dri/swrast_dri.so: cannot open shared object file: No such file or directory)  libGL: OpenDriver: trying /usr/lib/dri/tls/swrast_dri.so  libGL: OpenDriver: trying /usr/lib/dri/swrast_dri.so  libGL error: dlopen /usr/lib/dri/swrast_dri.so failed (/usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory)  libGL error: unable to load driver: swrast_dri.so  libGL error: reverting to indirect rendering  display: :0  screen: 0  direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)  server glx vendor string: ATI  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_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  client glx vendor string: Mesa Project and SGI  client glx version string: 1.4  client glx extensions:      GLX_ARB_create_context, GLX_ARB_create_context_profile,       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_EXT_create_context_es2_profile, 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_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGIS_multisample,       GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group,       GLX_EXT_texture_from_pixmap  OpenGL vendor string: ATI Technologies Inc.  OpenGL renderer string: AMD Radeon HD 6800 Series   OpenGL version string: 1.4 (2.1 (4.2.11762 Compatibility Profile Context))  OpenGL extensions:      GL_ARB_depth_texture, GL_ARB_draw_buffers, GL_ARB_fragment_program,       GL_ARB_fragment_program_shadow, GL_ARB_framebuffer_object, GL_ARB_imaging,       GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query,       GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_shadow,       GL_ARB_shadow_ambient, GL_ARB_texture_border_clamp,       GL_ARB_texture_compression, GL_ARB_texture_cube_map,       GL_ARB_texture_env_add, GL_ARB_texture_env_combine,       GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3,       GL_ARB_texture_mirrored_repeat, GL_ARB_texture_non_power_of_two,       GL_ARB_texture_rectangle, GL_ARB_transpose_matrix, GL_ARB_vertex_program,       GL_ARB_window_pos, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color,       GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate,       GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_copy_texture,       GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_blit,       GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_object,       GL_EXT_multi_draw_arrays, GL_EXT_packed_pixels, GL_EXT_point_parameters,       GL_EXT_rescale_normal, GL_EXT_secondary_color,       GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, GL_EXT_stencil_wrap,       GL_EXT_subtexture, GL_EXT_texture3D, GL_EXT_texture_compression_s3tc,       GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add,       GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_lod,       GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp,       GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_vertex_array,       GL_ATI_draw_buffers, GL_ATI_texture_env_combine3,       GL_ATI_texture_mirror_once, GL_ATIX_texture_env_combine3,       GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate,       GL_NV_texture_rectangle, GL_SGIS_generate_mipmap,       GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp,       GL_SGIS_texture_lod, GL_SGIX_shadow_ambient, GL_SUN_multi_draw_arrays  

However, i did a search for that library and it is somewhere else:

$ locate swrast_dri.so  /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so  


Solution:1

You get two errors there: first it cant load /usr/lib/dri/swrast_dri.so and it can't load /usr/lib32/dri/swrast_dri.so failed also. To fix the first you can try to make a symbolic link to make the location it needs points to the real location of the files:

sudo ln -s  /usr/lib/x86_64-linux-gnu/dri /usr/lib/dri  

I don't know if this is the best way, but if it doesn work you can delete the symlink created

sudo rm /usr/lib/dri  

The next error seems to be related to the fact it cannot find the 32bit version of that libraries. You can try to install it using (libgl1-mesa-dri is the package that provides that file in my system):

sudo apt-get install libgl1-mesa-dri:i386  

Hope this helps.


Solution:2

I solved this by uninstalling the old one:

sudo /usr/share/ati/amd-uninstall.sh --force  

then rebooted the machine, then installed latest 12.10 version

rebooted again (who said that in linux you don't have to reboot?)

and now the context is direct


Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »