From the answers to this question I have discovered that the embedded Linux distribution provided to me, by my hardware supplier, was not built with kernel support. If I am to use this distribution I have to be able to install drivers for some CANBUS hardware that will be attached. The source for the drivers is provided by the CANBUS part manufacturer but since the OS I have been given does not have gcc installed on it and does not support loadable modules, I have no idea how to continue.

Is there anything at all I can do to try get around this problem? The alternative is to use DOS as the OS on the embedded device which I am very keen to avoid so any potential solutions would be gratefully received.

  • 1
    If the kernel doesn't have module support, you can't load modules. You need to rebuild the kernel, either with your additional drivers compiled in, or with loadable module support.
    – Mat
    Jul 19, 2012 at 11:25

1 Answer 1


By definition, if the kernel does not support loadable modules, you cannot load a module.

As you have already been told, there is something you can do: install a kernel compiled by someone else or recompile a kernel, with loadable modules and all the extra drivers you like.

I recommend that you first try installing an existing Linux distribution. This is a lot easier than compiling your own kernel, especially if you don't have enough technical information about exactly what hardware is in it.

You do not need to have GCC installed on the device to recompile a kernel. The kernel is designed to make cross-compilation easy. In fact, since your device has an x86 processor, all you need to do is compile a kernel with the right options on your PC.

Determining the right options can be difficult, and putting the kernel in the right place to be booted can be difficult. Feel free to ask on this site if you need help with those. In your question, be sure to give as much information as you can about your device.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .