"export CC=gcc32" sets the "CC" environment variable to "gcc32" which let the build scripts know they should use gcc32 as the compiler rather than gcc. If you notice, gcc32 and gcc are not the same version as you hinted at:
- Code: Select all
[voidmain@laplinux voidmain]$ gcc32 --version
gcc32 (GCC) 3.2.3 20030422 (Red Hat Linux 3.2.3-6)
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[voidmain@laplinux voidmain]$ gcc --version
gcc (GCC) 3.3.2 20031022 (Red Hat Linux 3.3.2-1)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Hence gcc32 really means gcc v3.2.x. If you do a "cat /proc/version" you'll notice Fedora's kernel was compiled with gcc version 3.2:
- Code: Select all
[voidmain@laplinux voidmain]$ cat /proc/version
Linux version 2.4.22-1.2115.nptl (bhcompile@daffy.perf.redhat.com) (gcc version 3.2.3 20030422 (Red Hat Linux 3.2.3-6)) #1 Wed Oct 29 15:42:51 EST 2003
The same compiler should be used to compile kernel modules as was used to compile the kernel. If not, you can end up with some problems like the ones you have experienced.
Now I haven't tried this but I suppose there is a good chance that if you compile the kernel with gcc v3.3.x and then try and compile your video drivers with the same compiler it *might* work. There very well could be other incompatibilities with the v3.3.x compiler that are causing problems though and might explain why the kernel comes compiled with v3.2.x.