Remote OpenGL -- getting it to work?

L. A. Walsh freedesktop at tlinx.org
Mon May 30 19:20:32 UTC 2016


I have sometimes gotten some GLX programs to work for a short while,
but more often than not, I don't get them to work at all.

I'm not sure where to look for how to configure it to be allowed, but
on the client end, it doesn't seem to ever want to load swrast.

The glxinfo cmd looks like it is detecting GLX stuff on the cygwin-X
server, which _looks_ hopeful, but I've never figured out the what's wrong
with swrast.  I have swrast.so on my system:

>  ll /usr/lib64/dri/{,updates}swrast_dri.so
-rwxr-xr-x 7 8036024 Jan 27  2015 /usr/lib64/dri/swrast_dri.so*
lrwxrwxrwx 1      28 Dec 12  2013 /usr/lib64/driupdates/swrast_dri.so -> 
/usr/lib64/dri/swrast_dri.so*

And it doesn't seem to have any problems "loading" according to "ldd" --
I've added on the output from "ldd /usr/lib64/dri/swrast_dri.so" after
the glxinfo output, below.

If there's any other output that would be helpful, would be happy
to supply it!

Thanks for any help!



My glxinfo, BTW, is a softpointer:

>  ll /usr/bin/glxinfo
lrwxrwxrwx 1 34 May 27  2015 /usr/bin/glxinfo -> 
../lib64/mesa-demos/xdemos/glxinfo*

Presetting LIBGL_DEBUG=verbose, as recommended by a previous
run, I get:

-----glxinfo output w/DEBUG-------

libGL error: failed to load driver: swrast
name of display: athenae:0
display: athenae:0  screen: 0
direct rendering: No (If you want to find out why, try setting 
LIBGL_DEBUG=verbose)
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
    GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_visual_info,
    GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, GLX_OML_swap_method,
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
    GLX_SGI_make_current_read, GLX_SGI_swap_control
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_create_context_robustness, GLX_ARB_fbconfig_float,
    GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, 
GLX_ARB_multisample,
    GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile,
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, 
GLX_EXT_visual_info,
    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer,
    GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
    GLX_SGI_swap_control, GLX_SGI_video_sync
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_copy_sub_buffer,
    GLX_MESA_multithread_makecurrent, GLX_OML_swap_method,
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
    GLX_SGI_make_current_read, GLX_SGI_swap_control
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 590/PCIe/SSE2
OpenGL version string: 1.4 (4.5.0 NVIDIA 355.98)
OpenGL extensions:
    GL_ARB_depth_texture, GL_ARB_draw_buffers, GL_ARB_fragment_program,
    GL_ARB_fragment_program_shadow, 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_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_ATI_draw_buffers, GL_ATI_texture_mirror_once,
    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_draw_range_elements,
    GL_EXT_fog_coord, 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_two_side, GL_EXT_stencil_wrap,
    GL_EXT_texture3D, GL_EXT_texture_compression_dxt1,
    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_filter_anisotropic,
    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_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate,
    GL_NV_blend_square, GL_NV_depth_clamp, GL_NV_fog_distance,
    GL_NV_fragment_program2, GL_NV_fragment_program_option,
    GL_NV_light_max_exponent, GL_NV_multisample_filter_hint,
    GL_NV_point_sprite, GL_NV_texgen_reflection,
    GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4,
    GL_NV_texture_rectangle, GL_NV_vertex_program2_option,
    GL_NV_vertex_program3, GL_SGIS_generate_mipmap,
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp,
    GL_SGIS_texture_lod, GL_SGIX_depth_texture, GL_SGIX_shadow,
    GL_SUN_multi_draw_arrays, GL_SUN_slice_accum

98 GLX Visuals
...
323 GLXFBConfigs:
...
(leaving out the tables of GLX visuals and fbconfigs...unless those 
would be useful...?)

===================== ldd /usr/lib64/dri/swrast_dri.so output =====

>  ldd /usr/lib64/dri//swrast_dri.so
  linux-vdso.so.1 (0x00007ffd33cbb000)
  libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f8b8b4ce000)
  libdl.so.2 => /lib64/libdl.so.2 (0x00007f8b8b2ca000)
  libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f8b8b09f000)
  libdrm.so.2 => /lib64/libdrm.so.2 (0x00007f8b8ae93000)
  libdrm_nouveau.so.2 => /usr/lib64/libdrm_nouveau.so.2 (0x00007f8b8ac8c000)
  libelf.so.1 => /lib64/libelf.so.1 (0x00007f8b8aa75000)
  libdrm_radeon.so.1 => /usr/lib64/libdrm_radeon.so.1 (0x00007f8b8a868000)
  libLLVMipo.so => /usr/lib64/libLLVMipo.so (0x00007f8b8a613000)
  libLLVMR600CodeGen.so => /usr/lib64/libLLVMR600CodeGen.so 
(0x00007f8b8a352000)
  libLLVMR600Desc.so => /usr/lib64/libLLVMR600Desc.so (0x00007f8b8a0b8000)
  libLLVMR600Info.so => /usr/lib64/libLLVMR600Info.so (0x00007f8b89eb6000)
  libLLVMX86Disassembler.so => /usr/lib64/libLLVMX86Disassembler.so 
(0x00007f8b89b63000)
  libLLVMX86CodeGen.so => /usr/lib64/libLLVMX86CodeGen.so 
(0x00007f8b89823000)
  libLLVMX86Desc.so => /usr/lib64/libLLVMX86Desc.so (0x00007f8b8954a000)
  libLLVMBitReader.so => /usr/lib64/libLLVMBitReader.so (0x00007f8b89320000)
  libLLVMX86Info.so => /usr/lib64/libLLVMX86Info.so (0x00007f8b8911e000)
  libLLVMJIT.so => /usr/lib64/libLLVMJIT.so (0x00007f8b88f06000)
  libLLVMExecutionEngine.so => /usr/lib64/libLLVMExecutionEngine.so 
(0x00007f8b88ced000)
  libLLVMScalarOpts.so => /usr/lib64/libLLVMScalarOpts.so 
(0x00007f8b88a09000)
  libLLVMTarget.so => /usr/lib64/libLLVMTarget.so (0x00007f8b887f9000)
  libLLVMMC.so => /usr/lib64/libLLVMMC.so (0x00007f8b88580000)
  libLLVMCore.so => /usr/lib64/libLLVMCore.so (0x00007f8b881ad000)
  libLLVMSupport.so => /usr/lib64/libLLVMSupport.so (0x00007f8b87ee4000)
  libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f8b87bd4000)
  libm.so.6 => /lib64/libm.so.6 (0x00007f8b878d3000)
  libc.so.6 => /lib64/libc.so.6 (0x00007f8b8752c000)
  libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f8b87314000)
  /lib64/ld-linux-x86-64.so.2 (0x00005646fed2e000)
  libLLVMAnalysis.so => /usr/lib64/../lib64/libLLVMAnalysis.so 
(0x00007f8b86fbe000)
  libLLVMInstCombine.so => /usr/lib64/../lib64/libLLVMInstCombine.so 
(0x00007f8b86d40000)
  libLLVMTransformUtils.so => 
/usr/lib64/../lib64/libLLVMTransformUtils.so (0x00007f8b86ab2000)
  libLLVMVectorize.so => /usr/lib64/../lib64/libLLVMVectorize.so 
(0x00007f8b86858000)
  libLLVMipa.so => /usr/lib64/../lib64/libLLVMipa.so (0x00007f8b86636000)
  libLLVMAsmPrinter.so => /usr/lib64/../lib64/libLLVMAsmPrinter.so 
(0x00007f8b863ca000)
  libLLVMCodeGen.so => /usr/lib64/../lib64/libLLVMCodeGen.so 
(0x00007f8b85fc0000)
  libLLVMR600AsmPrinter.so => 
/usr/lib64/../lib64/libLLVMR600AsmPrinter.so (0x00007f8b85d9e000)
  libLLVMSelectionDAG.so => /usr/lib64/../lib64/libLLVMSelectionDAG.so 
(0x00007f8b859fd000)
  libLLVMX86AsmPrinter.so => /usr/lib64/../lib64/libLLVMX86AsmPrinter.so 
(0x00007f8b857d3000)
  libLLVMX86Utils.so => /usr/lib64/../lib64/libLLVMX86Utils.so 
(0x00007f8b855cf000)
  libLLVMObject.so => /usr/lib64/../lib64/libLLVMObject.so 
(0x00007f8b85378000)
  libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f8b85143000)
  libz.so.1 => /lib64/libz.so.1 (0x00007f8b84f2d000)
  libLLVMMCParser.so => /usr/lib64/../lib64/../lib64/libLLVMMCParser.so 
(0x00007f8b84cff000)
Ishtar:law/bin/lib/Mail_Sort> ^C
Ishtar:law/bin/lib/Mail_Sort> ldd /usr/lib64/dri/swrast_dri.so
  linux-vdso.so.1 (0x00007fff432fb000)
  libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f2dcf698000)
  libdl.so.2 => /lib64/libdl.so.2 (0x00007f2dcf494000)
  libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f2dcf269000)
  libdrm.so.2 => /lib64/libdrm.so.2 (0x00007f2dcf05d000)
  libdrm_nouveau.so.2 => /usr/lib64/libdrm_nouveau.so.2 (0x00007f2dcee56000)
  libelf.so.1 => /lib64/libelf.so.1 (0x00007f2dcec3f000)
  libdrm_radeon.so.1 => /usr/lib64/libdrm_radeon.so.1 (0x00007f2dcea32000)
  libLLVMipo.so => /usr/lib64/libLLVMipo.so (0x00007f2dce7dd000)
  libLLVMR600CodeGen.so => /usr/lib64/libLLVMR600CodeGen.so 
(0x00007f2dce51c000)
  libLLVMR600Desc.so => /usr/lib64/libLLVMR600Desc.so (0x00007f2dce282000)
  libLLVMR600Info.so => /usr/lib64/libLLVMR600Info.so (0x00007f2dce080000)
  libLLVMX86Disassembler.so => /usr/lib64/libLLVMX86Disassembler.so 
(0x00007f2dcdd2d000)
  libLLVMX86CodeGen.so => /usr/lib64/libLLVMX86CodeGen.so 
(0x00007f2dcd9ed000)
  libLLVMX86Desc.so => /usr/lib64/libLLVMX86Desc.so (0x00007f2dcd714000)
  libLLVMBitReader.so => /usr/lib64/libLLVMBitReader.so (0x00007f2dcd4ea000)
  libLLVMX86Info.so => /usr/lib64/libLLVMX86Info.so (0x00007f2dcd2e8000)
  libLLVMJIT.so => /usr/lib64/libLLVMJIT.so (0x00007f2dcd0d0000)
  libLLVMExecutionEngine.so => /usr/lib64/libLLVMExecutionEngine.so 
(0x00007f2dcceb7000)
  libLLVMScalarOpts.so => /usr/lib64/libLLVMScalarOpts.so 
(0x00007f2dccbd3000)
  libLLVMTarget.so => /usr/lib64/libLLVMTarget.so (0x00007f2dcc9c3000)
  libLLVMMC.so => /usr/lib64/libLLVMMC.so (0x00007f2dcc74a000)
  libLLVMCore.so => /usr/lib64/libLLVMCore.so (0x00007f2dcc377000)
  libLLVMSupport.so => /usr/lib64/libLLVMSupport.so (0x00007f2dcc0ae000)
  libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f2dcbd9e000)
  libm.so.6 => /lib64/libm.so.6 (0x00007f2dcba9d000)
  libc.so.6 => /lib64/libc.so.6 (0x00007f2dcb6f6000)
  libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f2dcb4de000)
  /lib64/ld-linux-x86-64.so.2 (0x000055aeded68000)
  libLLVMAnalysis.so => /usr/lib64/../lib64/libLLVMAnalysis.so 
(0x00007f2dcb188000)
  libLLVMInstCombine.so => /usr/lib64/../lib64/libLLVMInstCombine.so 
(0x00007f2dcaf0a000)
  libLLVMTransformUtils.so => 
/usr/lib64/../lib64/libLLVMTransformUtils.so (0x00007f2dcac7c000)
  libLLVMVectorize.so => /usr/lib64/../lib64/libLLVMVectorize.so 
(0x00007f2dcaa22000)
  libLLVMipa.so => /usr/lib64/../lib64/libLLVMipa.so (0x00007f2dca800000)
  libLLVMAsmPrinter.so => /usr/lib64/../lib64/libLLVMAsmPrinter.so 
(0x00007f2dca594000)
  libLLVMCodeGen.so => /usr/lib64/../lib64/libLLVMCodeGen.so 
(0x00007f2dca18a000)
  libLLVMR600AsmPrinter.so => 
/usr/lib64/../lib64/libLLVMR600AsmPrinter.so (0x00007f2dc9f68000)
  libLLVMSelectionDAG.so => /usr/lib64/../lib64/libLLVMSelectionDAG.so 
(0x00007f2dc9bc7000)
  libLLVMX86AsmPrinter.so => /usr/lib64/../lib64/libLLVMX86AsmPrinter.so 
(0x00007f2dc999d000)
  libLLVMX86Utils.so => /usr/lib64/../lib64/libLLVMX86Utils.so 
(0x00007f2dc9799000)
  libLLVMObject.so => /usr/lib64/../lib64/libLLVMObject.so 
(0x00007f2dc9542000)
  libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f2dc930d000)
  libz.so.1 => /lib64/libz.so.1 (0x00007f2dc90f7000)
  libLLVMMCParser.so => /usr/lib64/../lib64/../lib64/libLLVMMCParser.so 
(0x00007f2dc8ec9000)







More information about the xorg mailing list