Re: lug-bg: компилиране на ядрото; версия на пакета kernel-headers-?.?.?-????-?.tgz
- Subject: Re: lug-bg: компилиране на ядрото; версия на пакета kernel-headers-?.?.?-????-?.tgz
- From: Dimitar Katerinski <train@xxxxxxx>
- Date: Wed, 21 Jul 2004 00:12:19 +0300
Здравей,
Валентин Стойков wrote:
Положението е следното: инсталирам Slackware 10.0 с ядро 2.4.x.
Дотук познато.
После искам да си компилирам ново ядро 2.6.7 и да го инсталирам.
Просто го направи ;-) Следвай си инструкциите за 2.6, и не се плаши.
Какво да правя с пакета kernel-headers-2.4.x-i386-1.tgz? Да го деинсталирам
и да инсталирам на негово място хедърите на новото ядро?
С цел? Заради самата компилация на ядрото, или за да си обновиш просто този пакет
с цел софтуера който за в бъдеще компилираш, да ползва 2.6 kernel headers?
Имам пакет с хедърите
от новото ядро,но ако нямам?
Как от сорса да измъкна хедърите? Има ли някакъв стандартен
начин за това (или ще трябва да гледам скриптовете от третия/четвъртия диск
за правене на този пакет)?
Значи, всеки сорс на ядрото съдържа в себе си и тези файлове. Намират се в
include/
За да си направиш slackware пакет с текущите kernel headers, можеш да направиш
нещо подобно на:
PKG=/tmp/pack-kernel-headers
KERNEL_SRC=/path/to/kernel/souce
mkdir -p $PKG/usr/include/linux $PKG/usr/include/asm-i386
cp -a $KERNEL_SRC/include/{linux,asm-i386} $PKG/usr/include/
cd $PKG/usr/include ; ln -s asm-i386 asm ; cd $PKG
chown -R root.root .
makepkg -l y -c n kernel-headers-$VERSION-i386-1.tgz
С две думи е това :)
Какво означава това:
Do NOT use the /usr/src/linux area! This area has a (usually
incomplete) set of kernel headers that are used by the library header
files. They should match the library, and not get messed up by
whatever the kernel-du-jour happens to be.
Това е от README-то на ядрото.
Казват, че не е хубаво да си разопаковаш сорса на ядрото в /usr/src/linux,
защото например може да има инсталирано такова от дистрибуцията (ако си инсталирал
пакета kernel-souce например), и ще стане бъркотевица.
В директорията /usr/src/linux нямаше нищо. Старите хедъри са
в /usr/include/linux/ и затова пренебрегнах това (инсталирах пакета със сорса
на новото ядро и то се оказа на /usr/src/linux-2.6.7 и имаше симвона връзка
linux -> linux-2.6.7).
Искам само да отбележа, че когато едно ядро се компилира, то ползва собствените си
header файлове, които се намират в директорията include/. Затова ти казах, че няма
значение какви хедъри имаш в /usr/include/linux, ако ще компилираш самият кърнел,
а не някакъв друг софтуер.
Поздрави,
Димитър
--
"The only thing necessary for the triumph of evil is for good men to do nothing."
--Edmund Burke.
============================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers).
http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora
To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html
============================================================================
|