Results 1 to 5 of 5

Thread: fglrx errors after ati catalyst 8.12 install

  1. #1
    Join Date
    Feb 2007
    Posts
    25

    Default fglrx errors after ati catalyst 8.12 install

    after install ati catalyst 8.12 on
    Linux deep 2.6.27.7-53.fc9.x86_64 #1 SMP Thu Nov 27 02:05:02 EST 2008 x86_64 x86_64 x86_64 GNU/Linux
    i found these errors
    cat /var/log/Xorg.0.log |grep EE
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (II) Loading extension MIT-SCREEN-SAVER
    (EE) AIGLX error: dlopen of /usr/lib/dri/fglrx_dri.so failed (/usr/lib/dri/fglrx_dri.so: wrong ELF class: ELFCLASS32)
    (EE) AIGLX: reverting to software rendering

    cat /var/log/Xorg.0.log |grep WW
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (WW) fglrx: Force AIGLX enabled
    (WW) Falling back to old probe method for fglrx
    (WW) This ATI Proprietary Linux Driver does not guarantee support of video driver ABI higher than 2.0
    (WW) Video driver ABI version of the X server is 4.1
    (WW) fglrx: No matching Device section for instance (BusID PCI:0@7:0:1) found
    (WW) fglrx: No matching Device section for instance (BusID PCI:0@7:0:1) found
    (WW) fglrx(0): board is an unknown third party board, chipset is supported
    (WW) fglrx(0): Only one display is connnected,so single mode is enabled
    (WW) <default pointer>: No Device specified, looking for one...


    cat /usr/share/ati/fglrx-install.log
    [Message] Kernel Module : Trying to install a precompiled kernel module.
    [Message] Kernel Module : Precompiled kernel module version mismatched.
    [Message] Kernel Module : Found kernel module build environment, generating kernel module now.
    AMD kernel module generator version 2.1
    doing Makefile based build for kernel 2.6.x and higher
    rm -rf *.c *.h *.o *.ko *.GCC* .??* *.symvers
    make -C /lib/modules/2.6.27.7-53.fc9.x86_64/build SUBDIRS=/lib/modules/fglrx/build_mod/2.6.x modules
    make[1]: Entering directory `/usr/src/kernels/2.6.27.7-53.fc9.x86_64'
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
    /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function ‘KCL_MEM_VM_GetRegionPhysAddrStr’:
    /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3221: warning: return makes pointer from integer without a cast
    /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3222: warning: return makes pointer from integer without a cast
    /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3223: warning: return makes pointer from integer without a cast
    /lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3225: warning: return makes pointer from integer without a cast
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_acpi.o
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_agp.o
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_debug.o
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_ioctl.o
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_io.o
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_pci.o
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_str.o
    CC [M] /lib/modules/fglrx/build_mod/2.6.x/kcl_wait.o
    LD [M] /lib/modules/fglrx/build_mod/2.6.x/fglrx.o
    Building modules, stage 2.
    MODPOST 1 modules
    CC /lib/modules/fglrx/build_mod/2.6.x/fglrx.mod.o
    LD [M] /lib/modules/fglrx/build_mod/2.6.x/fglrx.ko
    make[1]: Leaving directory `/usr/src/kernels/2.6.27.7-53.fc9.x86_64'
    build succeeded with return value 0
    duplicating results into driver repository...
    done.
    You must change your working directory to /lib/modules/fglrx
    and then call ./make_install.sh in order to install the built module.
    - recreating module dependency list
    - trying a sample load of the kernel modules
    done.

    how can i fix this install ?

  2. #2

    Default

    Quote Originally Posted by localizer View Post
    (EE) AIGLX error: dlopen of /usr/lib/dri/fglrx_dri.so failed (/usr/lib/dri/fglrx_dri.so: wrong ELF class: ELFCLASS32)
    (EE) AIGLX: reverting to software rendering
    The library loading for fglrx seems to be bugged (it doesn't work on 64-bit openSUSE either). Essentially, it's loading the 32-bit library where it should be loading the 64-bit library.

    Are your 64-bit libraries in /usr/lib64 ? As a temporary workaround, you can move /usr/lib/dri/fglrx_dri.so and create a symlink to /usr/lib64/dri/fglrx_dri.so in /usr/lib/dri. This will nix DRI for 32-bit apps, though (like stuff run via WINE).

    I wonder if someone hardcoded a path that only works for Debian-based distros... Hopefully this gets attention from someone...

  3. #3
    Join Date
    Feb 2007
    Posts
    25

    Default

    Quote Originally Posted by spiritofreason View Post
    The library loading for fglrx seems to be bugged (it doesn't work on 64-bit openSUSE either). Essentially, it's loading the 32-bit library where it should be loading the 64-bit library.

    Are your 64-bit libraries in /usr/lib64 ? As a temporary workaround, you can move /usr/lib/dri/fglrx_dri.so and create a symlink to /usr/lib64/dri/fglrx_dri.so in /usr/lib/dri. This will nix DRI for 32-bit apps, though (like stuff run via WINE).

    I wonder if someone hardcoded a path that only works for Debian-based distros... Hopefully this gets attention from someone...

    thanks for your reply , but i've made this symlink earlier and didn't work , any how i've migrated from fedora to ubuntu due to this issue where the driver worked there .
    thanks

  4. #4
    Join Date
    Jan 2009
    Posts
    1

    Talking brute solution

    I've solved the problem, but it's a rather brute method:
    - open the file /usr/lib64/xorg/modules/updates/extensions/libglx.so in a binary capable editor (I used emacs)
    - search the string "/usr/lib/dri"
    - replace
    "/usr/lib/dri^@DRI^@" by
    "/usr/lib64/dri^@D^@"
    (where "^@" are zero-bytes)
    Now, the path is correct. The string "DRI" is damaged now but that seems to be unimportant. (It is crucial not to change the file size!)
    After that, fglrx worked fine on my system.

  5. #5
    Join Date
    Jan 2009
    Posts
    1

    Default

    That indeed was the problem. But rather than editing the file, I solved it with a symbolic link:
    First move out of the way the existing .so file, then create a sym link:

    mv /usr/lib/dri/fglrx_dri.so /usr/lib/dri/fglrx_dri.so.32bit
    ln -s /usr/lib64/dri/fglrx_dri.so /usr/lib/dri/fglrx_dri.so


    This fixes all the glxinfo errors, such as:
    Minor opcode of failed request: 19 (X_GLXQueryServerString)
    Last edited by nicola; 01-25-2009 at 12:11 PM. Reason: Solved with symbolic link

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •