компилирование этого драйвера в виде модуля в Linux без полной перекомпиляции ядра

635
Journeyman Geek

Я использовал mbox2 в качестве внешней звуковой карты на Windows - она ​​звучит лучше, чем моя встроенная звуковая карта или мой iPod, и в значительной степени качает мои носки. Есть несколько небольших проблем - он работает только с приложениями, которые поддерживают ASIO, и поддерживает только один поток за раз - что не так уж и плохо - системные звуки работают поверх обычной звуковой карты, а музыка - через mbox2.

Теперь ... есть экспериментальный драйвер для linux, который, хотя и неполный и не поддерживается, и, возможно, не будет обновляться в будущем, позволит мне использовать mbox2 в linux, и не будет иметь некоторых недостатков драйвера для windows, Однако это означает, что, по-видимому, нужно собрать совершенно новое ядро, и я бы не стал этого делать. Мне интересно, есть ли способ скомпилировать это как модуль (комментарии намекают на это) самостоятельно, а скорее скомпилировать все ядро.

0

2 ответа на вопрос

0
Shiki

Есть несколько возможностей. Если это что-то, что добавляет в ядро ​​совершенно новую опцию, вы должны исправить исходный код ядра (скорее всего, более старый) и запустить make menuconfig. Там вы можете включить его только как модуль. Конечно, вы должны перекомпилировать ядро. (Если на компьютере установлена ​​linux crappy ( медленно кашляет ), вы можете просто кросс-компилировать и скопировать туда ядро. ЕСЛИ вы знаете, как это сделать, или у вас есть настроение для этого.)

О, я проверил источник. Да, работает только исправляющее ядро, так как это не модуль. Он изменяет базовое поведение ALSA, если я правильно понимаю. Так что да, вы можете скомпилировать его как модуль, но я сомневаюсь, что это будет возможно. (Попробуйте использовать дерево -git, возможно, он исправил это, потому что это НЕ приемлемый способ исправления.)

скорее всего, он не исправил это. Это экспериментальный драйвер, который, видимо, он больше не разрабатывает. Это делает меня грустной пандой, так как я не уверен, стоит ли прыгать через обручи только для того, чтобы заставить звуковую карту работать; p Journeyman Geek 14 лет назад 0
Ну, тогда вы должны придерживаться этого. :) Shiki 14 лет назад 0
0
Ignacio Vazquez-Abrams

Хотя может быть возможно собрать его как модуль, он предназначен для замены существующего модуля, предоставляемого пакетом ядра для вашего дистрибутива. Таким образом, это может привести к потере каких-либо улучшений в этом модуле в основном ядре.

Правильный способ справиться с этим - получить исходный пакет ядра для вашего дистрибутива, найти специфичный для звуковой карты код в исходном коде, который он поставляет, вставить его в исходный пакет и пересобрать бинарный пакет. Это более сложный путь, но он будет иметь лучшие результаты.

Похожие вопросы