LINUX.ORG.RU

Ubuntu и ссылка на /usr/src/linux

 , ,


0

1

Уж какие я только пакеты не ставил, и пакет исходников и заголовочников и другие - но должен же быть какой-нибудь мета-пакет который сделал бы эту ссылку (/usr/src/linux) как-то корректно и стандартно.

Как ее сделать? Или если для сборки драйвера надо делать это вручную? Я помню есть какая-то разница между папками заголовочников, в одной что-то generic, а в другой с файлами типа config и другие те кто описывают параметры текущего собранного ядра.

т.е. главный вопрос: как создать ссылку /usr/src/linux путем установки пакета? так чтобы она сама обновлялась автоматически если будут какие-то изменения, т.е. если ядро будет обновлено и надо будет пересобрать

ЗЫ не стал в devel разделе создавать, ибо это явно чисто юзерская тема :)

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 2)

Во всех манах, что я встречал, по сборке ядра везде делается вручную линк.
Самое логичное впихивать это действие в сам установочный пакет, либо писать велосипед.

Deleted
()
Ответ на: комментарий от I-Love-Microsoft

Компиляция драйвера - то, с чего началось моё знакомство с Linux. А то без драйвера контроллера жёсткого диска он не хотел устанавливаться. Позднее драйвер появился в ядре. И знаний-то немного надо, на один абзац! Не нужно даже знать про configure. Не понимаю, почему некоторых пугает это.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

хех... ты собирал а я их даже писал простые ;)

вот ты реально сейчас не понимаешь, у MEN это не просто драйвер из исходников которых я кучу уже собрал сам, и не DKMS драйвер, а целая система абстракции для разных ОСей (типа jungo windriver) - вот с ней запаришься разбираться

ну в общем тему можно закрыть, я указал напрямую /usr/src/linux-headers-3.2.0-24-generic/ и оно собралось, думал может капризничать будет, ан нет - собрался драйвер

правда «радует» меня строками:

root@s-MS-7623:/lib/modules/3.2.0-24-generic/misc# insmod men_lx_frodo.ko
insmod: error inserting 'men_lx_frodo.ko': -1 Unknown symbol in module
root@s-MS-7623:/lib/modules/3.2.0-24-generic/misc# insmod men_lx_chameleon.ko
insmod: error inserting 'men_lx_chameleon.ko': -1 Unknown symbol in module

никто не знает почему собранный на текущей версии ядра так упорно отказывается на нем запускаться? но там еще куча других драйверов с men_*.ko - ни один не устанавливается, пишут про unknown symbol

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от I-Love-Microsoft

Если ты писал модули, может подскажешь причины багов? Это патч для AMD Catalyst 12.4 для Linux: http://mirror.yandex.ru/gentoo-portage/x11-drivers/ati-drivers/files/ati-driv.... Его верхняя часть нужна для того, чтобы драйвер работал с ядром Linux 3.4, в Интернете даже находил после какого коммита в ядро он понадобился. Но на x86_64 не работает, в логе можно найти ошибку fglrx: Unknown symbol old_rsp (err 0). Поэтому есть вторая половина патча, которая является хаком.

К чему приводит вторая половина патча. Splash Screen у openSUSE несколько раз мерцает перед запуском иксов. Иногда иксы не стартуют, init 3 и init 5 срабатывают и всё работает. Затем, проблемы с OpenGL. На ATi Radeon HD 3200 бенчмарк Unigine Heaven просто вешает компьютер, а на мощном ATi Radeon HD 5850 приводит к тому, что FPS хоть и высокий, но он одну секунду 0, а за вторую быстро проносятся кадры и первой, и второй секунды, и так бесконечно. На простых OpenGL-игрушках и на OpenCL Bitcoin-майнере не проявляется - всё работает.

Патч (хак) вот этот:

DEFINE_PER_CPU(unsigned long, old_rsp);

Думаю что раз драйвер за май (12.5) выпускать не торопятся, пора кому-нибудь рассказать об этом.

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

ой, слушай, умение писать _простые_ модули ядра, будь то символьные или PCI драйверы, не дает волшебной способности понимать вообще все возможные модули

считай драйвер это всего лишь софт, специфический софт, где нет стандартной библиотеки Си а есть что-то совсем иное, но не суть

вот есть такой онлайн-поиск по ядру - в последнем нет вообще никаких функций или макросов for_each_cpu_mask или for_each_possible_cpu, это какой-то специфичный код на тему SMP

I-Love-Microsoft ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.