#66 drivers won't load with kernel compiled under gcc 3+

open
nobody
None
5
2003-08-09
2003-08-09
Kevin Bryan
No

./au8810.o: The module you are trying to load
(./au8810.o) is compiled with a gcc version 2 compiler,
while the kernel you are running is compiled with a gcc
version 3 compiler. This is known to not work.

This is apprently because of the binary only asp10.o
file. Is there a workaround this besides recompiling
the kernel with an ancient compiler?

Discussion

  • Nobody/Anonymous

    Logged In: NO

    I was able to load the CVS version with an insmod -f and
    have it work, despite the warnings, just fyi.

     
  • Nobody/Anonymous

    Logged In: NO

    will that work? if i compile with an older complier will the
    driver work?

     
  • Henry Arthur Garcia

    Logged In: YES
    user_id=153584

    Well. I don't think so--despite what the other guy said.

    I believe you have to have a kernel built with gcc-2.95.3.
    And then compile the modules with gcc-2.95.3 also. This works.

    It soundsYour distro has a gcc-3.x. Your distro may have a
    gcc-2.95.3 available as a package. Just make sure the
    Makefile in the kernel-source points to the older gcc. Do
    the same while compiling the aureal driver. You're looking
    for "gcc" in the makefile.

    You might have to download the source from ftp.gnu.org for
    gcc-2.95.3 and compile it yourself for your system. That's
    what I had to do for Slackware 9.1. Once I had a kernel
    compiled with gcc-2.95.3 and aureal compiled with the same,
    the au88xx module worked without problems and without
    warnings and no special parameters added to insmod,
    modprobe, or whatever.

    Hank

     
  • Nobody/Anonymous

    Logged In: NO

    Why doesn't anybody recompile the asp?0.o files with gcc 3+ ?
    That would be about time since this project hasn't been
    updated with new files for over 3 years!

     
  • Nobody/Anonymous

    Logged In: NO

    just replace gcc2 with gcc3 by your favorite hex editor and everything
    will work fine(at least in my 2.4.20 gcc3.2-compiled kernel)

     
  • Nobody/Anonymous

    Logged In: NO

    I found that I could make it load by calling "insmod -f
    au8810" would cause it to load, and it would work okay. For
    some reason, this does not work on my system unless an
    attempt has been made to access /dev/dsp. I run "cat [any
    file] > /dev/dsp". This will return an error, because there
    is no sound driver loaded, but the module will load afterwards.

     

Log in to post a comment.