Strona 1 z 1

[+] kompilacja jajka linux-2.6.32.2

: 23 grudnia 2009, 18:59
autor: cycu85
Witam.

Kompiluję jajko według tego opisu:

http://yampress.dug.net.pl/doku.php?id= ... ja-kernela

i wyskakuje mi taki błąd:

Kod: Zaznacz cały

-C Documentation/lguest
make[1]: Wejście do katalogu `/usr/src/linux-2.6.32.2/Documentation/lguest'
cc -m32 -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -I../../include -I../../arch/x86/include -U_FORTIFY_SOURCE    lguest.c   -o lguest
lguest.c:21:25: error: sys/eventfd.h: Nie ma takiego pliku ani katalogu
lguest.c: In function 'create_thread'
lguest.c:1027: warning: implicit declaration of function 'eventfd'
make[1]: *** [lguest] Błąd 1
make[1]: Opuszczenie katalogu `/usr/src/linux-2.6.32.2/Documentation/lguest'
make: *** [debian/stamp/build/kernel] Błąd 2
Proszę o pomoc.

: 23 grudnia 2009, 19:08
autor: darkwater
W sidzie już jest 2.6.32, może zwyczajnie dociągniesz i zainstalujesz?

: 23 grudnia 2009, 19:18
autor: cycu85
jaki pakiet zawiera ten plik to sobie go doinstaluje i powinno rozwiązać problem

Kod: Zaznacz cały

sys/eventfd.h

: 23 grudnia 2009, 19:24
autor: darkwater

: 23 grudnia 2009, 19:41
autor: cycu85
Dziękuję za pomoc szukałem przez Google ale tego nie znalazłem.

¯eby naprawić ten błąd wystarczy usunąć z pliku:

Kod: Zaznacz cały

/usr/src/linux-2.6.32.2/Documentation/lguest/lguest.c
linijkę:

Kod: Zaznacz cały

#include <sys /eventfd.h>
Dziękuję za pomoc.
Pozdrawiam.

: 23 grudnia 2009, 19:45
autor: darkwater
Gwoli ścisłości to jedno z 2 rozwiązań

Kod: Zaznacz cały

Below 'Virtualization' unselect 'Linux hypervisor example code' 

or
 
if you need lguest you can also fix the compilation error by removing 
'#include <sys /eventfd.h>' (line 21) from lguest.c.

: 05 stycznia 2010, 13:31
autor: peter86
Jak się odhaczy całe [Virtualization] to efekt będzie ten sam? Bo już któryś raz kompiluje kernela i na różne sposoby, raz mi ten błąd generuje, raz nie.

: 07 stycznia 2010, 17:05
autor: giaur
cycu85 pisze:jaki pakiet zawiera ten plik to sobie go doinstaluje i powinno rozwiązać problem

Kod: Zaznacz cały

sys/eventfd.h
libc6-dev, ale tylko w Squeeze i Sidzie. W Lennym nie ma tego pliku. Więc twój problem jest pewnie taki, że masz wersję stabilną. Jeżeli po usunięciu tego wpisu będzie działać, to w porządku ale wydaje mi się, że lepiej podnieść wersję libc6 bo bez powodu tego ,,include'' tam nie umieszczono.

Lenny jest już jednak dość stary i nieaktualny, kompilowanie najnowszego jądra na tym systemie trochę mija się z celem.

: 07 stycznia 2010, 21:37
autor: Taii
A może spróbował jajka z Siduksa? U mnie na Lennym zadziałał, tylko jeden pakiet, trzeba dociągnąć.
Jeśli miałbyś problem ze znalezieniem tego w internecie czy przez apt-get to wyślij prywatną wiadomość to wyślę ci w paczce deb takie jądro: linux-image-2.6.32-1.slh.4-sidux-686_2.6.32-12_i386.