Установка модуля .ko во встраиваемую систему Linux, которая не поддерживает модули

Установка модуля .ko во встраиваемую систему Linux, которая не поддерживает модули

Из ответов наэтот вопросЯ обнаружил, что дистрибутив встроенного Linux, предоставленный мне моим поставщиком оборудования, не был собран с поддержкой ядра. Если я хочу использовать этот дистрибутив, мне нужно установить драйверы для некоторого оборудования CANBUS, которое будет подключено. Исходный код драйверов предоставлен производителем детали CANBUS, но поскольку в предоставленной мне ОС не установлен gcc и она не поддерживает загружаемые модули, я не знаю, как продолжить.

Можно ли как-то обойти эту проблему? Альтернативой является использование DOS в качестве ОС на встроенном устройстве, чего я очень хочу избежать, поэтому любые потенциальные решения будут приняты с благодарностью.

решение1

По определению, если ядро ​​не поддерживает загружаемые модули, вы не сможете загрузить модуль.

Как вам уже сказали, есть кое-что, что вы можете сделать:установить ядро, скомпилированное кем-то другимилиперекомпилировать ядро, с загружаемыми модулями и всеми дополнительными драйверами, которые вам нужны.

Я рекомендую вам сначала попробовать установить существующий дистрибутив Linux. Это намного проще, чем компилировать собственное ядро, особенно если у вас недостаточно технической информации о том, какое именно оборудование в нем установлено.

Вам не нужно иметь установленный GCC на устройстве для перекомпиляции ядра. Ядро разработано для того, чтобы сделатькросс-компиляциялегко. Фактически, поскольку ваше устройство имеет процессор x86, все, что вам нужно сделать, это скомпилировать ядро ​​с нужными параметрами на вашем ПК.

Определение правильных опций может быть сложным, и размещение ядра в правильном месте для загрузки может быть сложным. Не стесняйтесь спрашивать на этом сайте, если вам нужна помощь с этим. В своем вопросе обязательно дайте как можно больше информации о вашем устройстве.

Связанный контент