Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: emagi в Jan 16, 2007, 20:54



Титла: Кернел:Къде да разархивирам?
Публикувано от: emagi в Jan 16, 2007, 20:54
Тук намерих една много хубава статия за компилиране на ядро:
http://linux-bg.org/cgi-bin....1090767
Но не мога да разбера,къде трябва да разархивирам новото ядро!Примерно смъквам linux-2.6.19.2.tar.gz и после:
tar xzvf linux-2.6.19.2.tar.gz /........
Къде?


Титла: Кернел:Къде да разархивирам?
Публикувано от: senser в Jan 16, 2007, 21:45
разархивираш в /usr/src

и после правиш символна връзка към директорията с новото ядро:
Примерен код

#cd /usr/src
#ln -s linux-2.6.19.2 linux


Титла: Кернел:Къде да разархивирам?
Публикувано от: karaman в Jan 16, 2007, 23:15
това последното не се препоръчва ама въобще! (за символна връзка говоря)





Титла: Кернел:Къде да разархивирам?
Публикувано от: m0rph в Jan 16, 2007, 23:28
Цитат (karaman @ Ян. 17 2007,02:15)
това последното не се препоръчва ама въобще! (за символна връзка говоря)

Защо?


Титла: Кернел:Къде да разархивирам?
Публикувано от: karaman в Jan 17, 2007, 01:36
защото съществуват пакети, които при компилиране некоректно се обръщат първо към
/usr/src/linux/include/asm
вместо към
/usr/include/asm
и за да си вържеш гащите е по-лесно да не правиш този линк :)

м-да, забравих да кажа, че става дума за 2.6 ядра

съмнявам се, че едва ли има 5% шанс да му се случи някога точно тази беда, но за всеки случай :)


Титла: Кернел:Къде да разархивирам?
Публикувано от: rpetrov в Jan 18, 2007, 19:34
няма проблем да се направи "символна връзка към директорията с новото ядро:" в /usr/src


в /usr/include може да се добавят връзки за linux и asm*

като начало може да се деинсталират пакети които са инсталирали файлове в /usr/include/linux и /usr/include/asm*

Бел.: следващите редове ги пиша по памет и може да не са коректни

Нека в /usr/include/ няма linux и asm*. Тогава:
- за 2.4
# cd /usr/include
# ln -s ../src/linux/include/asm
# ln -s ../src/linux/include/linux
# ln -s ../src/linux/include/asm-generic
Бел.: третата връзка може и да не е необходима - зависи от съдържанието в другите две.

- за 2.6
(дали за всички или от някоя версия нататък е вярно долното)
# cd /usr/include
# ln -s ../src/linux/include/asm-generic
# ln -s ../src/linux/include/asm-<ARCH>
# ln -s ../src/linux/include/linux
# ln -s asm-<ARCH> asm
, където <ARCH> е архитектурата.
За <ARCH> може да се види в <kernel-srcdir>/include, след make {|old|menu|x| и незнам още какъв си}config, къде сочи asm.