Kompilacja j

Ogólne pytania dotyczące systemu
wojtasm91
Posty: 24
Rejestracja: 01 grudnia 2009, 15:28

Post autor: wojtasm91 »

Wynik polecenia:

Kod: Zaznacz cały

 lspci

Kod: Zaznacz cały

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)
00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)
00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)
00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
00:07.7 System peripheral: VMware Inc Virtual Machine Communication Interface (rev 10)
00:0f.0 VGA compatible controller: VMware Inc Abstract SVGA II Adapter
00:10.0 SCSI storage controller: BusLogic BT-946C (BA80C30) [MultiMaster 10] (rev 01)
00:11.0 PCI bridge: VMware Inc Device 0790 (rev 02)
00:15.0 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:15.1 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:15.2 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:15.3 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:15.4 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:15.5 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:15.6 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:15.7 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:16.0 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:16.1 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:16.2 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:16.3 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:16.4 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:16.5 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:16.6 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:16.7 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:17.0 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:17.1 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:17.2 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:17.3 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:17.4 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:17.5 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:17.6 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:17.7 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:18.0 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:18.1 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:18.2 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:18.3 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:18.4 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:18.5 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:18.6 PCI bridge: VMware Inc Device 07a0 (rev 01)
00:18.7 PCI bridge: VMware Inc Device 07a0 (rev 01)
02:00.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)
02:01.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 02)
i polecenia:

Kod: Zaznacz cały

lsmod

Kod: Zaznacz cały

Module                  Size  Used by
nls_utf8                1760  1 
isofs                  28196  1 
zlib_inflate           14144  1 isofs
udf                    67780  0 
nls_base                6820  3 nls_utf8,isofs,udf
crc_itu_t               2080  1 udf
ppdev                   6468  0 
lp                      8164  0 
ipv6                  235396  14 
cpufreq_conservative     5960  0 
cpufreq_ondemand        6476  0 
cpufreq_powersave       1856  0 
cpufreq_userspace       3172  0 
cpufreq_stats           3776  0 
freq_table              4224  2 cpufreq_ondemand,cpufreq_stats
ext2                   54504  1 
loop                   12748  0 
parport_pc             22500  1 
parport                30988  3 ppdev,lp,parport_pc
serio_raw               4740  0 
psmouse                32336  0 
snd_ens1371            19072  1 
pcspkr                  2432  0 
gameport               10700  1 snd_ens1371
snd_seq_midi            5728  0 
snd_seq_midi_event      6432  1 snd_seq_midi
snd_rawmidi            18496  2 snd_ens1371,snd_seq_midi
snd_ac97_codec         88452  1 snd_ens1371
ac97_bus                1728  1 snd_ac97_codec
snd_pcm                62660  2 snd_ens1371,snd_ac97_codec
snd_seq                41456  2 snd_seq_midi,snd_seq_midi_event
snd_timer              17800  2 snd_pcm,snd_seq
snd_seq_device          6380  3 snd_seq_midi,snd_rawmidi,snd_seq
snd                    45636  9 snd_ens1371,snd_rawmidi,snd_ac97_codec,snd_pcm,snd_seq,snd_timer,snd_seq_device
soundcore               6368  1 snd
snd_page_alloc          7816  1 snd_pcm
container               3456  0 
ac                      4196  0 
button                  6096  0 
i2c_piix4               7216  0 
i2c_core               19828  1 i2c_piix4
intel_agp              22524  1 
agpgart                28808  1 intel_agp
shpchp                 25528  0 
pci_hotplug            23460  1 shpchp
evdev                   8000  2 
ext3                  105576  1 
jbd                    39476  1 ext3
mbcache                 7108  2 ext2,ext3
ide_cd_mod             27684  1 
cdrom                  30176  1 ide_cd_mod
ide_disk               10496  3 
ata_generic             4676  0 
libata                140448  1 ata_generic
dock                    8304  1 libata
ide_pci_generic         3908  0 [permanent]
floppy                 47844  0 
pcnet32                27396  0 
mii                     4896  1 pcnet32
BusLogic               20052  0 
scsi_mod              129548  2 libata,BusLogic
piix                    6568  0 [permanent]
ide_core               96168  4 ide_cd_mod,ide_disk,ide_pci_generic,piix
thermal                15228  0 
processor              32576  1 thermal
fan                     4196  0 
thermal_sys            10856  3 thermal,processor,fan
jak skonfigurować jądro dla czegoś takiego na razie udało mi się skompilować najnowsze jądro bez zmian w pliku konfig po prostu go skopiowałem. Z góry dziękuję za pomoc,

Takie coś stało się podczas kompilacji jądra do paczki:

Kod: Zaznacz cały

make[1]: Opuszczenie katalogu `/usr/src/linux-2.6.33.2'
/usr/bin/make  EXTRAVERSION=.2-yampress  ARCH=i386 \
                 -C Documentation/lguest
make[1]: Wejście do katalogu `/usr/src/linux-2.6.33.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:37:18: error: zlib.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.33.2/Documentation/lguest'
make: *** [debian/stamp/build/kernel] Błąd 2
Awatar użytkownika
ryba84
Beginner
Posty: 340
Rejestracja: 08 lipca 2007, 14:55
Lokalizacja: LDZ

Post autor: ryba84 »

t1234k
Posty: 7
Rejestracja: 19 lutego 2010, 22:47

Post autor: t1234k »

Nie po to wysłałem Ci linka z poradnikiem, żebyś nawet nie raczył do niego zajrzeć. Ale niech będzie, zrób tak:

Kod: Zaznacz cały

apt-get install zlib1g-dev
I przeczytaj to: http://www.4unix.pl/debian/blad-kompila ... ctory.html
wojtasm91
Posty: 24
Rejestracja: 01 grudnia 2009, 15:28

Post autor: wojtasm91 »

Zrobiłem to co jest napisane w poradniku ale jak po wystąpieniu błędu opisanego wcześniej wpiszę polecenie z poradnika, a mianowicie:

Kod: Zaznacz cały

vi Documentation/lguest/lguest.c
to widzę linijkę, którą mam usunąć ale nic nie mogę z nią zrobić. Nie mogę nawet wpisać żadnego innego polecenia. Nie ma po prostu linii ze znakiem zachęty #. Podczas konfiguracji jądra odznaczyłem też gałąź Virtualization tak jak radzono w innym temacie na tym forum i nadal ten sam problem.
t1234k
Posty: 7
Rejestracja: 19 lutego 2010, 22:47

Post autor: t1234k »

Wpisz najpierw:

Kod: Zaznacz cały

vimtutor
i naucz się podstaw. Zabierasz się za kompilację jądra nie mając elementarnej wiedzy, nie mówiąc już nawet, że instalujesz pakiety i wpisujesz komendy, które nie wiesz co robią.

Znaczek hasha (#) wpisuje się w poradnikach, gdy daną komendę trzeba wykonać z prawami roota.

I najważniejsze, w erze, gdy nawet przeglądarki sprawdzają Ci pisownię, robić takich byków ortograficznych nie wypada.
wojtasm91
Posty: 24
Rejestracja: 01 grudnia 2009, 15:28

Post autor: wojtasm91 »

Przepraszam za błędy ale czasem jak piszę szybko to robię błędy. Macie może jeszcze jakiś pomysł co do występującego u mnie błędu. Przed ponowną kompilacją odznaczyłem w menu konfiguracji jądra gałąź odpowiedzialną za wirtualizacje i usunąłem zgodne z sugestią wpis z pliku za pomocą pico bo było mi wygodniej. Niestety nadal to samo może to wina małej partycji systemowej, która ma tylko 5GB albo systemu plików ext3, który dla niej zastosowałem? Z góry dziękuję za pomoc.
AdeBe
Junior Member
Posty: 825
Rejestracja: 01 grudnia 2007, 14:41

Post autor: AdeBe »

wojtasm91 pisze:Przepraszam za błędy ale czasem jak piszę szybko to robię błędy.
To pisz wolniej.
t1234k
Posty: 7
Rejestracja: 19 lutego 2010, 22:47

Post autor: t1234k »

Nie ma szans, coś zrobiłeś źle. Masz dwa błędy:

Kod: Zaznacz cały

lguest.c:21:25: error: sys/eventfd.h: Nie ma takiego pliku ani katalogu
lguest.c:37:18: error: zlib.h: Nie ma takiego pliku ani katalogu
Pierwszy napisałem Ci jak się naprawia, a drugi rozwiązuje się poprzez doinstalowanie paczki

Kod: Zaznacz cały

zlib1g-dev
Wpisałeś:

Kod: Zaznacz cały

make clean
przed ponowną kompilacją?
sKa
Posty: 73
Rejestracja: 18 maja 2007, 23:51
Lokalizacja: Sosnowiec

Post autor: sKa »

wojtasm91 pisze:Panie i Panowie możecie mi podać jakąś sprawdzoną instrukcje kompilacji jądra. Najlepiej taką żeby posiadała potrzebne polecenia. Z góry wielkie podziękowania za pomoc.
Nie. Bo takowej, w gruncie rzeczy nie ma.

Wszystko sprowadza się do kilku poleceń:

Kod: Zaznacz cały

make menuconfig
Uruchomienie konfiguratora jądra

Kod: Zaznacz cały

make && make modules_install && make install
Budowa obrazu jądra oraz modułów, przeniesienie modułów w /lib/modules/$JĄDRO, przeniesienie obrazu jądra do /boot.

Nie ma uniwersalnej konfiguracji jądra, bo każdy z nas ma różny sprzęt komputerowy.
W konfiguracji jądra przydadzą Ci się polecenia:

Kod: Zaznacz cały

lsusb
lspci
cat /proc/cpuinfo
Jeżeli nauczyciel ograniczył Cię w rozmiarze jądra Linuksa, to musisz stworzyć modularne jądro - większość rzeczy zaznaczaj jako [M]. Systemy plików, kontrolery dysków itp. też zaznacz jako [M] - wykorzystasz initrd, by system podniósł się.

Źródła jądra ściągaj zawsze najnowsze i z oficjalnej strony (wypakowujesz je standardowo w /usr/src i tworzysz symlinka do nich - /usr/src/linux). Na upartego możesz pokusić się o starszą gałąź jądra - 2.4.x, ale to raczej nie jest dobry pomysł. Nie wiem jak to jądro wspiera najnowszy sprzęt - zakładam, że takowy masz. No i kompilacja jest nieco "inna".
Powodzenia!
ODPOWIEDZ