Driver Modules under linux-2.4.31 - unresolved sysmbols
David Daney
ddaney at avtrex.com
Thu Sep 15 16:44:31 UTC 2005
PHILLIPS John M wrote:
> Short form of the question:
> What is required to make a load-able driver module under the later versions
> of linux 2.4.xx?
>
> Long form of the question:
> I have already build and run a linux-2.6 version of our drivers and
> application. But a bug has appeared in our existing system and I need to
> re-build a linux-2.4 version. The makefiles used under linux-2.4.4 that
> made simple loadable object modules no long seem to work under 2.4.31. When
> attempting "insmod <modulename>", I get unresolved symbols
> __generic_copy_from_user, __release_region, reguster_chrdev, and more.
This is not really a uClibc issue. But...
It looks like you are not using the proper include files when building
the module. The include files *must* be from the exact version of the
kernel for which you are building the module. Some of the internal
kernel APIs undoubtedly changed between 2.4.4 and 2.4.31 so you may have
to account for that as well.
David Daney.
More information about the uClibc
mailing list