LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   ati driver 32-bit compatibility for Slackware 64-bit multilib? (http://www.linuxquestions.org/questions/slackware-14/ati-driver-32-bit-compatibility-for-slackware-64-bit-multilib-753161/)

vik 09-06-2009 06:22 PM

ati driver 32-bit compatibility for Slackware 64-bit multilib?
 
Does anyone know if I need to build the proprietary ATI drivers specifically for 32-bit, or do the 64-bit packages take care of 32-bit compatibility? If so, how would I do that?

I tried:
Code:

. /etc/profile.d/32dev.sh
sh ati-driver-installer-9-8-x68.x86_64.run --buildpkg Slackware/Only_X

but the package has the same files as its 64-bit counterpart. The reason I'm asking is I'm trying to get Neverwinter Nights working and a post I found mentioned this problem. I get a single line error: "Failed to initialize graphics." Thanks in advance.

adamk75 09-06-2009 06:49 PM

AMD provides one driver package for both 32 bit and 64 bit distributions. While I've only built the driver package on the slackware64 (using '--buildpkg Slackware/All'), I would assume that the driver would create the correct Slackware package for your architecture. Did you actually try installing and using the package that was generated? And is there some reason you didn't build the kernel driver package, too?

vik 09-06-2009 06:57 PM

I created and installed both packages the first time. I tried building just the X package in compatibility mode to see if there was some kind of 32-bit package I could get. So something else must be wrong. Thanks.

adamk75 09-06-2009 07:03 PM

If you tell us what problem you are having we might be able to tell you what's wrong :-) Be sure to include your /var/log/Xorg.0.log file from when you attempted to use the fglrx drivers.

Adam

vik 09-06-2009 07:52 PM

1 Attachment(s)
I'm trying to get Neverwinter Nights running with Slackware 13 multilib. I've installed ATI driver 9.8. I keep getting this error:
Code:

Failed to initialize graphics.
./nwn: line 13:  6582 Segmentation fault      ./nwmain $@

Attached is my Xorg.0.log (as xorg.txt).

I don't know if it helps, but I can run glxgears and the openGL screensavers without problems.

Here's the output of ldd ./nwmain after running export LD_LIBRARY_PATH=/lib:/usr/lib:./miles:$LD_LIBRARY_PATH (as nwn does):
Code:

        linux-gate.so.1 =>  (0xffffe000)
        libm.so.6 => /lib/libm.so.6 (0xf7ed8000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xf7ec0000)
        libGL.so.1 => /usr/lib/libGL.so.1 (0xf7e5b000)
        libGLU.so.1 => /usr/lib/libGLU.so.1 (0xf7deb000)
        libmss.so.6 => ./miles/libmss.so.6 (0xf7d77000)
        libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0xf7cc3000)
        libc.so.6 => /lib/libc.so.6 (0xf7b63000)
        /lib/ld-linux.so.2 (0xf7eff000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0xf7a48000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0xf7a3a000)
        libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0xf7a35000)
        libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0xf7a31000)
        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xf7a2c000)
        libdrm.so.2 => /usr/lib/libdrm.so.2 (0xf7a23000)
        libdl.so.2 => /lib/libdl.so.2 (0xf7a1f000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xf7937000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0xf792a000)
        libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xf7922000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0xf7919000)
        libvga.so.1 => /usr/lib/libvga.so.1 (0xf789a000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0xf7882000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0xf787f000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xf7879000)
        librt.so.1 => /lib/librt.so.1 (0xf7870000)

Thanks.

vik 09-06-2009 08:15 PM

1 Attachment(s)
Also, here's the output of glxinfo:

Code:

GL_VERSION: 2.1.8870                                                                     
GL_EXTENSIONS: GL_AMDX_vertex_shader_tessellator GL_AMD_draw_buffers_blend GL_AMD_performance_monitor GL_AMD_texture_texture4 GL_AMD_vertex_shader_tessellator GL_ARB_color_buffer_float GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_instanced GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_instanced_arrays GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shader_objects GL_ARB_shader_texture_lod GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object 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_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_snorm GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_envmap_bumpmap GL_ATI_fragment_shader GL_ATI_meminfo 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_bindable_uniform 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_buffer GL_EXT_copy_texture GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_provoking_vertex 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_texgen_reflection GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object 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_integer GL_EXT_texture_lod 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_shared_exponent GL_EXT_texture_snorm GL_EXT_texture_swizzle GL_EXT_transform_feedback GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square GL_NV_conditional_render GL_NV_copy_depth_to_color GL_NV_explicit_multisample GL_NV_primitive_restart GL_NV_texgen_reflection GL_SGIS_generate_mipmap GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays GL_WIN_swap_hint WGL_EXT_swap_control
GL_RENDERER: ATI Radeon HD 4600 Series
GL_VENDOR: ATI Technologies Inc.
GLU_VERSION: 1.3
GLU_EXTENSIONS: GLU_EXT_nurbs_tessellator GLU_EXT_object_space_tess
GLUT_API_VERSION: 5
GLUT_XLIB_IMPLEMENTATION: 15

and here's strace ./nwn

adamk75 09-06-2009 08:21 PM

Try running:

LIBGL_DRIVERS_PATH=/usr/lib/xorg/modules/dri/ ./nwn

Adam

vik 09-06-2009 08:28 PM

LIBGL_DRIVERS_PATH=/usr/lib/xorg/modules/dri ./nwn
Failed to initialize graphics.
./nwn: line 13: 6771 Segmentation fault ./nwmain $@

Nope, same error. I also tried setting LIBGL_DRIVERS_PATH as an environment variable. I've searched through the bioware forums with no success either. I installed neverwinter nights per this guide:
http://nwn.bioware.com/forums/viewto...17536&forum=72

vik 09-06-2009 08:31 PM

Here's the standard output of strace ./nwmain (ran command to set LD_LIBRARY_PATH first as in nwn):

Code:

[ Process PID=6790 runs in 32 bit mode. ]                                               
Failed to initialize graphics.                                                           
*** glibc detected *** strace: malloc(): memory corruption (fast): 0x0000000000657460 ***
======= Backtrace: =========                                                             
/lib64/libc.so.6[0x7f184efc07e8]                                                         
/lib64/libc.so.6[0x7f184efc3e81]                                                         
/lib64/libc.so.6(__libc_malloc+0x98)[0x7f184efc5358]                                     
strace[0x4094c8]                                                                         
strace[0x40697c]                                                                         
strace[0x40442e]                                                                         
strace[0x405434]                                                                         
/lib64/libc.so.6(__libc_start_main+0xe6)[0x7f184ef67526]                                 
strace[0x402cf9]                                                                         
======= Memory map: ========                                                             
00400000-0042c000 r-xp 00000000 08:11 69793                              /usr/bin/strace 
0062b000-00648000 rw-p 0002b000 08:11 69793                              /usr/bin/strace 
00648000-00678000 rw-p 00648000 00:00 0                                  [heap]         
7f1848000000-7f1848021000 rw-p 7f1848000000 00:00 0                                     
7f1848021000-7f184c000000 ---p 7f1848021000 00:00 0                                     
7f184ed32000-7f184ed48000 r-xp 00000000 08:11 273815                    /usr/lib64/libgcc_s.so.1
7f184ed48000-7f184ef48000 ---p 00016000 08:11 273815                    /usr/lib64/libgcc_s.so.1
7f184ef48000-7f184ef49000 rw-p 00016000 08:11 273815                    /usr/lib64/libgcc_s.so.1
7f184ef49000-7f184f0b0000 r-xp 00000000 08:11 166283                    /lib64/libc-2.9.so
7f184f0b0000-7f184f2af000 ---p 00167000 08:11 166283                    /lib64/libc-2.9.so
7f184f2af000-7f184f2b3000 r--p 00166000 08:11 166283                    /lib64/libc-2.9.so
7f184f2b3000-7f184f2b4000 rw-p 0016a000 08:11 166283                    /lib64/libc-2.9.so
7f184f2b4000-7f184f2b9000 rw-p 7f184f2b4000 00:00 0
7f184f2b9000-7f184f2d9000 r-xp 00000000 08:11 168177                    /lib64/ld-2.9.so
7f184f4a9000-7f184f4ab000 rw-p 7f184f4a9000 00:00 0
7f184f4d5000-7f184f4d8000 rw-p 7f184f4d5000 00:00 0
7f184f4d8000-7f184f4d9000 r--p 0001f000 08:11 168177                    /lib64/ld-2.9.so
7f184f4d9000-7f184f4da000 rw-p 00020000 08:11 168177                    /lib64/ld-2.9.so
7fffa6f0b000-7fffa6f20000 rw-p 7ffffffea000 00:00 0                      [stack]
7fffa6fff000-7fffa7000000 r-xp 7fffa6fff000 00:00 0                      [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
Aborted

The standard error file is 23M, so I don't think I can post it here.

vik 09-06-2009 08:39 PM

Hey, I got it working! Instead of pointing to the open source drivers under /usr/lib/xorg/modules/dri, I pointed it to /usr/lib where the compatibility libraries are for the propietary driver, and it worked! Thank you.

LIBGL_DRIVERS_PATH=/usr/lib/ ./nwn

Any idea why this would be necessary?

Also, how do I change a thread title?

adamk75 09-07-2009 07:20 AM

Quote:

Originally Posted by vik (Post 3672388)
Hey, I got it working! Instead of pointing to the open source drivers under /usr/lib/xorg/modules/dri, I pointed it to /usr/lib where the compatibility libraries are for the propietary driver, and it worked! Thank you.

LIBGL_DRIVERS_PATH=/usr/lib/ ./nwn

Any idea why this would be necessary?

Also, how do I change a thread title?

Cool... Glad you got it working. Figured it was still trying to load the 64 bit libraries by mistake but wasn't aware that the 32 bit DRI driver was located in /usr/lib. Normally it would be /usr/lib/xorg/modules/dri.

It also looks like you figured out how to change the thread to solved :-)

Adam

vik 09-17-2009 06:39 PM

NOTE: this does not fix the issue correctly! NWN runs without hardware acceleration when I do this. Please see this thread for more details: http://www.linuxquestions.org/questi...t=32-bit+fglrx

cwizardone 09-24-2009 12:40 AM

Found this on the ATi web site,

"32-Bit packages must be installed for 64-Bit Linux drivers to install or work."

http://support.amd.com/us/gpudownloa...0&lang=English

Not sure what that means, but are they saying you must have multilib packages installed in a 64 bit version of Linux before
their 64 bit drivers will install or work?

vik 09-24-2009 01:42 AM

I'm not sure, but I don't think you need the multilib packages to install the 64-bit ATI driver. The slackware packages generated from the installer are 64-bit only (no 32-bit compatibility libraries), so I don't think you'd need them for that.

You can always find out by running the installer. It does some sanity checking for you.

forum1793 09-24-2009 09:09 PM

Quote:

Originally Posted by cwizardone (Post 3695109)
Found this on the ATi web site,

"32-Bit packages must be installed for 64-Bit Linux drivers to install or work."

http://support.amd.com/us/gpudownloa...0&lang=English

Not sure what that means, but are they saying you must have multilib packages installed in a 64 bit version of Linux before
their 64 bit drivers will install or work?

No, I just reinstalled 64-current and I did not install 32 bit anything (that I know of). I installed the open source AMD drivers and they work (HD3200 or r600).

Although I did have to create a link from /usr/lib64/xorg/modules/dri to /usr/lib64/dri which in my case was where r600.so, radeon_dri.so, and swrast_dri.so were placed. This is for my system and your results would very.

Edit: I'm sorry I might not have read the above posts better. My info is for open source drivers. Previous posts seem to discuss catalyst (proprietary drivers). But I'm pretty sure I loaded those without the 32 bit packages. At one time I compiled a 2.6.27.xx kernel and simply ran sh ati-driver-installer-9-6-x86.x86_64.run.

I haven't tried 9.8 with autoinstaller with 64 bit. For 32 bit with the latest slackware kernel I ran the sh ati-driver-installer-9-8-x86.x86_64.run --buildpkg Slackware/All. And then installed the packages. For me that worked OK.


All times are GMT -5. The time now is 10:53 AM.