Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > перекомпиляция ядра mandriva


Автор: Vaulter 3.6.2007, 20:26
ума не приложу, долго долго читал КАК это делается smile
НО
набираем:
Код

[root@localhost vaulter]# cd /usr/src/linux
[root@localhost linux]# make mrproper
awk: cmd. line:1: fatal: cannot open file `/lib/modules/2.6.17-5mdv/build/include/linux/version.h' for reading (Нет такого файла или каталога)
awk: cmd. line:1: fatal: cannot open file `/lib/modules/2.6.17-5mdv/build/include/linux/version.h' for reading (Нет такого файла или каталога)
gcc: /lib/modules/2.6.17-5mdv/build/include/linux/version.h: Нет такого файла или каталога
gcc: no input files
expr: пропущен операнд
Попробуйте `expr --help' для получения более подробного описания.
awk: cmd. line:1: fatal: cannot open file `/lib/modules/2.6.17-5mdv/build/include/linux/version.h' for reading (Нет такого файла или каталога)
/bin/sh: line 0: [: -ge: unary operator expected
/bin/sh: line 0: [: -ge: unary operator expected
[root@localhost linux]#


вот что тут посоветуете??? кроме как убится ап стену smile)
 smile  smile  smile ПОМОГИТЕ smile

Автор: powerfox 4.6.2007, 12:22
А исходники ядра мандривы стоят? Ссылка /usr/src/linux указывает на каталог с ними?
Некоторые дистрибутивостроители просто кладут минимальный набор файлов, необходимых для сборки ПО, используещего ядро (дрова nvidia). Это может быть защитой от стирания...
Как я понял, то /usr/src/linux указывает на /lib/modules/2.6.17-5mdv/

Автор: Vaulter 4.6.2007, 15:18
/lib/modules/2.6.17-5mdv/build указывает на /usr/src/linux

если так. то наверно не стоит пытаться их собрать?

Автор: powerfox 4.6.2007, 15:37
Цитата(Vaulter @  4.6.2007,  16:18 Найти цитируемый пост)
/lib/modules/2.6.17-5mdv/build указывает на /usr/src/linux

Именно так??? По идее, наоборот.


Цитата(Vaulter @  4.6.2007,  16:18 Найти цитируемый пост)
если так. то наверно не стоит пытаться их собрать?

Нужно поставить исходники мандрячного ядра: имя_пакета_с_ядром + -source. Или же скачать с сайта kernel.org стандартное. Лучше ставить мандрячное: они патчат его, добавляя свои навороты.

Автор: Vaulter 4.6.2007, 16:59
Цитата(powerfox @ 4.6.2007,  16:37)
Цитата(Vaulter @  4.6.2007,  16:18 Найти цитируемый пост)
/lib/modules/2.6.17-5mdv/build указывает на /usr/src/linux

Именно так??? По идее, наоборот.


Цитата(Vaulter @  4.6.2007,  16:18 Найти цитируемый пост)
если так. то наверно не стоит пытаться их собрать?

Нужно поставить исходники мандрячного ядра: имя_пакета_с_ядром + -source. Или же скачать с сайта kernel.org стандартное. Лучше ставить мандрячное: они патчат его, добавляя свои навороты.

именно так. специально смотрел. 
ставил естественно из дистра мандривы, читал ихние доки.

:(  smile 

Автор: powerfox 4.6.2007, 17:14
Так-с. А /usr/src/linux куда указывает? Это не папка.
Можно вывод команд:
Код

rpm -qa | fgrep kernel

И в папаке /usr/src:
Код

ls -la

Автор: kirjanov 4.6.2007, 17:44
действиьельно, что в /usr/src находится?

Автор: bilbobagginz 4.6.2007, 18:01
Цитата

ума не приложу, долго долго читал КАК это делается

чтение нужно было сопровождать с практическими упражнениями.
для компиляции ядра, нужно как минимум исходники ядра. правда ?

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

после этого следуй инструкциям.

если ядро от мандрюка тебе не нужно, то скачай ядро с kernel.org, и распакуй его в /usr/src.
появится:
linux-2.6.XX 
на него создай вручную ссылку linux
потом следуй инструкциям по сборке.

в конце ( после modules_install и т.д.) не забудь перекопировать .config -> /boot/config-<версия>, а vmlinuz в /boot/vmlinuz-<версия>,System в /boot/System-<версия> 

потом, отредактируй menu.lst или lilo.conf, смотря чем пользуешься, и не стирай старую конфигурацию, пока не убедишься, что новая работает.



Автор: Vaulter 4.6.2007, 19:39
ребят, естественно прежде чем его (ядро) пересобирать, я откопал и установил kernel-source с дистра мандривы =)
итак:
Цитата

[vaulter@localhost ~]$ rpm -qa | fgrep kernel
kernel-2.6.17.5mdv-1-1mdv2007.0
kernel-source-2.6.17.5mdv-1-1mdv2007.0
[vaulter@localhost ~]$


Цитата

[vaulter@localhost ~]$ ls -la /usr/src
итого 213
drwxr-xr-x  4 root root   1024 Май 30 18:24 ./
drwxr-xr-x 13 root root   1024 Май 29 01:26 ../
lrwxrwxrwx  1 root root     17 Май 30 18:24 linux -> linux-2.6.17-5mdv/
drwxr-xr-x 22 root root   1024 Июн  1 21:54 linux-2.6.17-5mdv/
drwxr-xr-x  3 root root   1024 Май 29 01:25 rpm/
-rw-r--r--  1 root root 212931 Май 29 15:32 rp-pppoe-3.8.tar.gz
[vaulter@localhost ~]$



Цитата

[vaulter@localhost ~]$ ls -la /lib/modules/2.6.17-5mdv/
итого 1447
drwxr-xr-x  3 root root   1024 Май 30 18:52 ./
drwxr-xr-x  3 root root   1024 Май 29 01:25 ../
lrwxrwxrwx  1 root root     26 Май 30 18:24 build -> /usr/src/linux-2.6.17-5mdv/
drwxr-xr-x 11 root root   1024 Май 29 01:25 kernel/
-rw-r--r--  1 root root 305586 Май 30 18:52 modules.alias
-rw-r--r--  1 root root     69 Май 30 18:52 modules.ccwmap
-rw-r--r--  1 root root 317017 Май 30 18:52 modules.dep
-rw-r--r--  1 root root  54769 Сен 13  2006 modules.description
-rw-r--r--  1 root root    887 Май 30 18:52 modules.ieee1394map
-rw-r--r--  1 root root    712 Май 30 18:52 modules.inputmap
-rw-r--r--  1 root root    389 Май 30 18:52 modules.isapnpmap
-rw-r--r--  1 root root     74 Май 30 18:52 modules.ofmap
-rw-r--r--  1 root root 234970 Май 30 18:52 modules.pcimap
-rw-r--r--  1 root root    967 Май 30 18:52 modules.seriomap
-rw-r--r--  1 root root 143659 Май 30 18:52 modules.symbols
-rw-r--r--  1 root root 400561 Май 30 18:52 modules.usbmap
lrwxrwxrwx  1 root root     26 Май 30 18:24 source -> /usr/src/linux-2.6.17-5mdv/
[vaulter@localhost ~]$   


вот таки дела :(((

а треба всеголишь было собрать модуль skystar2   smile 

Автор: powerfox 4.6.2007, 19:43
Цитата(Vaulter @  4.6.2007,  20:39 Найти цитируемый пост)
lrwxrwxrwx  1 root root     26 Май 30 18:24 build -> /usr/src/linux-2.6.17-5mdv/


Цитата(Vaulter @  4.6.2007,  20:39 Найти цитируемый пост)
lrwxrwxrwx  1 root root     26 Май 30 18:24 source -> /usr/src/linux-2.6.17-5mdv/

Кажись, ментейнер пакета баловался настоящим мандрейком. Какая-то бешеная и бесконечная рекурсия.
Только непонятно, как make лезет в /lib/modules/2.6.17-5mdv/build/include/linux/version.h

Vaulter, а ты не можешь скачать более новый пакет ялра мандривы?

Автор: Vaulter 4.6.2007, 19:58
powerfox, а что поможет? смотря сколько это хозяйство будет "весит" =)
а что в этих ссылках странного кстати??? это не нормально? руками ничего не делал.
все делалось установщиком mandriva :(

более того, драйвера nVidia встали! (хотя и ругнулись что, чтото типа не так с ядром :/)

Автор: powerfox 4.6.2007, 20:16
Цитата(Vaulter @  4.6.2007,  20:58 Найти цитируемый пост)
а что в этих ссылках странного кстати??? это не нормально? руками ничего не делал.

Твой модуль ищёт ядро (его файлы по ссылке) /usr/src/linux, по ней он попадает в /usr/src/linux-2.6.17-5mdv. ему надо зайти в build в итоге он опять попадает в папку с ядром.
В общем всё будет так: 
/usr/src/linux/build после подстановки ссылок будет /usr/src/linux-2.6.17-5mdv/usr/src/linux-2.6.17-5mdv/
Как попадает скрипт в папку с модулями - надо рыть makefile. Но это не имеет значения.


Цитата(Vaulter @  4.6.2007,  20:58 Найти цитируемый пост)
более того, драйвера nVidia встали! 

Какие именно?


Цитата(Vaulter @  4.6.2007,  20:58 Найти цитируемый пост)
powerfox, а что поможет? смотря сколько это хозяйство будет "весит" =)

Обычное - 100%, а мандривное - в зависимости от того, руками ли собрали. ~50 mb

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)