Graphic app requirements for Linux x64

Claggy
Claggy
Joined: 29 Dec 06
Posts: 560
Credit: 2699403
RAC: 0
Topic 197898

Does anyone know what the requirements for the einstein_S5R6_1.01_graphics_i686-pc-linux-gnu graphics app?

While i've seen it open on my Ubuntu 12.04 host and Boinc 7.2.47 with it's Nvidia 8400M GS,
I can't get it to open on my Ubuntu 14.04 host and Boinc 7.4.36 with an ATI x1400,
Boinc's a self compiled version, from the 7.4 head, but i've also tried the Berkely built 7.2.42 and 7.4.22 with no change,
I've not seen any logging flags, or logs wth any mention of the graphics app,
At present i don't know if it's a change in Ubuntu 14.04 that's caused it or lack of hardware/software support.

ldd gives:

Quote:
ldd einstein_S5R6_1.01_graphics_i686-pc-linux-gnu
[pre] not a dynamic executable[/pre]


I've installed extra mesa libs ontop of the one's i needed to build Boinc, including:

mesa-utils
mesa-utils-extra
mesa-common-dev
libglapi-mesa
libgl1-mesa-dri
libgl1-mesa-dev
libgl1-mesa-glx
libglu1-mesa
libglu1-mesa-dev
libgles1-mesa
libgles1-mesa-dev
libgles2-mesa
libgles2-mesa-dev
libopenvg1-mesa
libegl1-mesa
libegl1-mesa-drivers
libegl1-mesa-dev
libwayland-egl1-mesa
libmirclientplatform-mesa
libtxc-dxtn-s2tc0
mesa-vdpau-drivers
libva-egl1

stephen@stephen-MM061:~$ inxi -Gxx

Quote:
[pre]Graphics: Card: Advanced Micro Devices [AMD/ATI] RV515/M54 [Mobility Radeon X1400] bus-ID: 01:00.0 chip-ID: 1002:7145
X.Org: 1.15.1 drivers: ati,radeon (unloaded: fbdev,vesa) Resolution:
GLX Renderer: Gallium 0.4 on ATI RV515 GLX Version: 2.1 Mesa 10.1.3 Direct Rendering: Yes[/pre]


stephen@stephen-MM061:~$ glxinfo

Quote:
[pre]name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample,
GLX_EXT_create_context_es2_profile, 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_OML_swap_method, GLX_SGIS_multisample, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, 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_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_create_context, GLX_ARB_create_context_profile,
GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB,
GLX_ARB_get_proc_address, GLX_ARB_multisample,
GLX_EXT_create_context_es2_profile, 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_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
OpenGL vendor string: X.Org R300 Project
OpenGL renderer string: Gallium 0.4 on ATI RV515
OpenGL version string: 2.1 Mesa 10.1.3
OpenGL shading language version string: 1.20
OpenGL extensions:
GL_AMD_shader_trinary_minmax, GL_ANGLE_texture_compression_dxt3,
GL_ANGLE_texture_compression_dxt5, GL_APPLE_packed_pixels,
GL_APPLE_vertex_array_object, GL_ARB_ES2_compatibility,
GL_ARB_clear_buffer_object, GL_ARB_color_buffer_float, GL_ARB_copy_buffer,
GL_ARB_debug_output, GL_ARB_depth_texture, GL_ARB_draw_buffers,
GL_ARB_draw_elements_base_vertex, GL_ARB_explicit_attrib_location,
GL_ARB_fragment_coord_conventions, GL_ARB_fragment_program,
GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader,
GL_ARB_framebuffer_object, GL_ARB_get_program_binary,
GL_ARB_half_float_pixel, GL_ARB_half_float_vertex,
GL_ARB_instanced_arrays, GL_ARB_internalformat_query,
GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment,
GL_ARB_map_buffer_range, GL_ARB_multisample, GL_ARB_multitexture,
GL_ARB_occlusion_query, GL_ARB_occlusion_query2,
GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite,
GL_ARB_provoking_vertex, GL_ARB_robustness, GL_ARB_sampler_objects,
GL_ARB_shader_objects, GL_ARB_shader_texture_lod,
GL_ARB_shading_language_100, GL_ARB_shadow, GL_ARB_sync,
GL_ARB_texture_border_clamp, GL_ARB_texture_compression,
GL_ARB_texture_compression_rgtc, 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_float, GL_ARB_texture_mirror_clamp_to_edge,
GL_ARB_texture_mirrored_repeat, GL_ARB_texture_non_power_of_two,
GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_storage,
GL_ARB_texture_swizzle, GL_ARB_transpose_matrix, GL_ARB_vertex_array_bgra,
GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_binding,
GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader,
GL_ARB_window_pos, GL_ATI_blend_equation_separate, GL_ATI_draw_buffers,
GL_ATI_separate_stencil, GL_ATI_texture_compression_3dc,
GL_ATI_texture_env_combine3, GL_ATI_texture_float,
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_compiled_vertex_array,
GL_EXT_copy_texture, GL_EXT_draw_range_elements, GL_EXT_fog_coord,
GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample,
GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object,
GL_EXT_gpu_program_parameters, GL_EXT_multi_draw_arrays,
GL_EXT_packed_depth_stencil, GL_EXT_packed_pixels,
GL_EXT_pixel_buffer_object, GL_EXT_point_parameters,
GL_EXT_polygon_offset, GL_EXT_provoking_vertex, 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_subtexture, GL_EXT_texture, GL_EXT_texture3D,
GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_latc,
GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc,
GL_EXT_texture_cube_map, 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_bias, GL_EXT_texture_mirror_clamp,
GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB,
GL_EXT_texture_sRGB_decode, GL_EXT_texture_snorm, GL_EXT_texture_swizzle,
GL_EXT_vertex_array, GL_EXT_vertex_array_bgra,
GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip,
GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate, GL_KHR_debug,
GL_MESA_pack_invert, GL_MESA_texture_signed_rgba, GL_MESA_window_pos,
GL_MESA_ycbcr_texture, GL_NV_blend_square, GL_NV_conditional_render,
GL_NV_fog_distance, GL_NV_light_max_exponent, GL_NV_packed_depth_stencil,
GL_NV_primitive_restart, GL_NV_texgen_reflection, GL_NV_texture_barrier,
GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_NV_vdpau_interop,
GL_OES_EGL_image, GL_OES_read_format, GL_S3_s3tc,
GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp,
GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays[/pre]


stephen@stephen-MM061:~$ es2_info

Quote:
[pre]EGL_VERSION: 1.4 (Gallium)
EGL_VENDOR: Mesa Project
EGL_EXTENSIONS:
EGL_WL_bind_wayland_display, EGL_KHR_image_base, EGL_KHR_image_pixmap,
EGL_KHR_image, EGL_KHR_reusable_sync, EGL_KHR_fence_sync,
EGL_KHR_surfaceless_context, EGL_NOK_swap_region, EGL_NV_post_sub_buffer
EGL_CLIENT_APIS: OpenGL OpenGL_ES OpenGL_ES2 OpenVG
GL_VERSION: OpenGL ES 2.0 Mesa 10.1.3
GL_RENDERER: Gallium 0.4 on ATI RV515
GL_EXTENSIONS:
GL_EXT_blend_minmax, GL_EXT_multi_draw_arrays,
GL_EXT_texture_filter_anisotropic, GL_EXT_texture_compression_dxt1,
GL_EXT_texture_format_BGRA8888, GL_OES_depth24, GL_OES_element_index_uint,
GL_OES_fbo_render_mipmap, GL_OES_mapbuffer, GL_OES_rgb8_rgba8,
GL_OES_standard_derivatives, GL_OES_stencil8, GL_OES_texture_3D,
GL_OES_texture_npot, GL_OES_EGL_image, GL_OES_depth_texture,
GL_OES_packed_depth_stencil, GL_EXT_texture_type_2_10_10_10_REV,
GL_OES_get_program_binary, GL_APPLE_texture_max_level,
GL_EXT_discard_framebuffer, GL_EXT_read_format_bgra,
GL_NV_fbo_color_attachments, GL_OES_EGL_image_external,
GL_OES_vertex_array_object, GL_ANGLE_texture_compression_dxt3,
GL_ANGLE_texture_compression_dxt5, GL_EXT_texture_rg,
GL_EXT_unpack_subimage, GL_NV_draw_buffers, GL_NV_read_buffer,
GL_EXT_map_buffer_range, GL_OES_surfaceless_context[/pre]

Claggy

Bernd Machenschalk
Bernd Machenschalk
Moderator
Administrator
Joined: 15 Oct 04
Posts: 4312
Credit: 250528537
RAC: 34004

Graphic app requirements for Linux x64

The graphics app is definitely 32 Bit, even in the x64 app bundle.

32Bit compatibility libs?

Happy new year!

BM

BM

Claggy
Claggy
Joined: 29 Dec 06
Posts: 560
Credit: 2699403
RAC: 0

RE: The graphics app is

Quote:

The graphics app is definitely 32 Bit, even in the x64 app bundle.

32Bit compatibility libs?

Happy new year!

BM


I hadn't got them installed, Tried them, But ia32-libs is not available:

Quote:
stephen@stephen-MM061:~$ sudo apt-get install ia32-libs
[sudo] password for stephen:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package ia32-libs is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
lib32z1 lib32ncurses5 lib32bz2-1.0

Installed the replacements instead, restarted Boinc, but no change, I'll restart the host.

Claggy

floyd
floyd
Joined: 12 Sep 11
Posts: 133
Credit: 186610495
RAC: 0

That output of apt-get may be

That output of apt-get may be misleading. Does "dpkg --print-foreign-architectures" show i386? If not, try

dpkg --add-architecture i386
apt-get update
apt-get install ia32-libs


Claggy
Claggy
Joined: 29 Dec 06
Posts: 560
Credit: 2699403
RAC: 0

RE: That output of apt-get

Quote:

That output of apt-get may be misleading. Does "dpkg --print-foreign-architectures" show i386? If not, try

dpkg --add-architecture i386
apt-get update
apt-get install ia32-libs


I get the same as before, package not available.

Claggy

floyd
floyd
Joined: 12 Sep 11
Posts: 133
Credit: 186610495
RAC: 0

RE: I get the same as

Quote:
I get the same as before, package not available.


Sorry, I hadn't noticed the ia32-libs packages have been removed from Debian Testing and with that probably from Ubuntu. But they were only meta-packages anyway, pulling in a lot of libraries through dependencies.

What I'd do now is find out what libraries the binary refers to:

strings einstein_S5R6_1.01_graphics_i686-pc-linux-gnu | grep -i lib Then find the packages that provide them. I think dpkg-query is the tool to use but I'm not familiar with that. Last install the i386 packages manually, like

apt-get install libx11-6:i386 The ":i386" ist the important part.

Sorry again, I can't think of an easier way right now. Hope this works.

Oliver Behnke
Oliver Behnke
Moderator
Administrator
Joined: 4 Sep 07
Posts: 984
Credit: 25171438
RAC: 34

Hi Claggy, not sure why

Hi Claggy,

not sure why ldd doesn't produce the right output in your case. Here's what it should look like (taken on Debian Wheezy):

$ ldd einstein_S5R6_1.01_graphics_i686-pc-linux-gnu
    linux-gate.so.1 =>  (0xf7724000)
    libGL.so.1 => not found
    libX11.so.6 => not found
    libm.so.6 => /lib32/libm.so.6 (0xf76f5000)
    libpthread.so.0 => /lib32/libpthread.so.0 (0xf76db000)
    libc.so.6 => /lib32/libc.so.6 (0xf7575000)
    /lib/ld-linux.so.2 (0xf7725000)

So the packages you want should be:

  • * libc6-i386
    * libgl1-mesa-glx (i386)
    * libx11-6 (i386)

HTH,
Oliver

Einstein@Home Project

Claggy
Claggy
Joined: 29 Dec 06
Posts: 560
Credit: 2699403
RAC: 0

RE: Hi Claggy, not sure

Quote:

Hi Claggy,

not sure why ldd doesn't produce the right output in your case. Here's what it should look like (taken on Debian Wheezy):

$ ldd einstein_S5R6_1.01_graphics_i686-pc-linux-gnu
    linux-gate.so.1 =>  (0xf7724000)
    libGL.so.1 => not found
    libX11.so.6 => not found
    libm.so.6 => /lib32/libm.so.6 (0xf76f5000)
    libpthread.so.0 => /lib32/libpthread.so.0 (0xf76db000)
    libc.so.6 => /lib32/libc.so.6 (0xf7575000)
    /lib/ld-linux.so.2 (0xf7725000)

So the packages you want should be:

  • * libc6-i386
    * libgl1-mesa-glx (i386)
    * libx11-6 (i386)

HTH,
Oliver

Thanks,

Getting libgl1-mesa-glx (i386) fixed it, But rather large amount of libs required:

Quote:
stephen@stephen-MM061:~$ sudo apt-get install libgl1-mesa-glx:i386
[sudo] password for stephen:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
gcc-4.8-base:i386 libcgmanager0:i386 libdbus-1-3:i386 libdrm-intel1:i386
libdrm-nouveau2:i386 libdrm-radeon1:i386 libdrm2:i386 libelf1:i386
libexpat1:i386 libffi6:i386 libgl1-mesa-dri:i386 libglapi-mesa:i386
libllvm3.4:i386 libnih-dbus1:i386 libnih1:i386 libpciaccess0:i386
libstdc++6:i386 libtinfo5:i386 libtxc-dxtn-s2tc0:i386 libudev1:i386
libx11-xcb1:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386
libxcb-present0:i386 libxcb-sync1:i386 libxdamage1:i386 libxext6:i386
libxfixes3:i386 libxshmfence1:i386 libxxf86vm1:i386 zlib1g:i386
Suggested packages:
libglide3:i386
The following NEW packages will be installed
gcc-4.8-base:i386 libcgmanager0:i386 libdbus-1-3:i386 libdrm-intel1:i386
libdrm-nouveau2:i386 libdrm-radeon1:i386 libdrm2:i386 libelf1:i386
libexpat1:i386 libffi6:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
libglapi-mesa:i386 libllvm3.4:i386 libnih-dbus1:i386 libnih1:i386
libpciaccess0:i386 libstdc++6:i386 libtinfo5:i386 libtxc-dxtn-s2tc0:i386
libudev1:i386 libx11-xcb1:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386
libxcb-glx0:i386 libxcb-present0:i386 libxcb-sync1:i386 libxdamage1:i386
libxext6:i386 libxfixes3:i386 libxshmfence1:i386 libxxf86vm1:i386
zlib1g:i386
0 to upgrade, 33 to newly install, 0 to remove and 0 not to upgrade.
Need to get 13.0 MB of archives.
After this operation, 66.6 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

Wouldn't it be better to supply an x64 graphics app?

Claggy

Claggy
Claggy
Joined: 29 Dec 06
Posts: 560
Credit: 2699403
RAC: 0

RE: Wouldn't it be better

Quote:
Wouldn't it be better to supply an x64 graphics app?


Even then i doubt it would be simple, Setiathome does supply a x86_64 graphics app,
that fails too, with three not found, then only two when i installed libjpeg62 as well as libjpeg8:

libjpeg.so.62 => /usr/lib/x86_64-linux-gnu/libjpeg.so.62 (0x00007fc226930000)
libssl.so.10 => not found
libcrypto.so.10 => not found

Seems it's an already know problem:

http://askubuntu.com/questions/339364/libssl-so-10-cannot-open-shared-object-file-no-such-file-or-directory

Claggy

Bernd Machenschalk
Bernd Machenschalk
Moderator
Administrator
Joined: 15 Oct 04
Posts: 4312
Credit: 250528537
RAC: 34004

RE: Wouldn't it be better

Quote:
Wouldn't it be better to supply an x64 graphics app?

Not sure if that would build at all and then run on all systems you would want to run it on.

Honestly we didn't expect anyone would actually care to run the graphics app on Linux. We added code for a xscreensaver module to BOINC, but the module ('hack') is not distributed with the client, it's not trivial to configure and we don't know of anyone who is using it.

BM

BM

Oliver Behnke
Oliver Behnke
Moderator
Administrator
Joined: 4 Sep 07
Posts: 984
Credit: 25171438
RAC: 34

RE: Wouldn't it be better

Quote:
Wouldn't it be better to supply an x64 graphics app?


Well, yeah, as Bernd already alluded to: GFX on Linux has always had a very low priority for us because of the lack of actual screensaver support, requiring manual GFX app launching. I guess we will at some point move to 64 bit entirely and drop 32 bit support for good but that's still some time in the future. Until then I don't think it's worth the effort.

Quote:


Even then i doubt it would be simple, Setiathome does supply a x86_64 graphics app,
that fails too, with three not found, then only two when i installed libjpeg62 as well as libjpeg8:

libjpeg.so.62 => /usr/lib/x86_64-linux-gnu/libjpeg.so.62 (0x00007fc226930000)
libssl.so.10 => not found
libcrypto.so.10 => not found


That looks like a build issue to me. While they could almost certainly link libjpeg statically, the other two libs should not be required by a GFX app at all, unless they include some online/hashing features in their GFX app...? We always build our apps as static as possible to avoid such issues. libc, X11 and OpenGL, however, can't be linked that way, so we're at the absolute minimum already.

Cheers,
Oliver

Einstein@Home Project

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.