Witam. Zainstalowałem Debiana w wersji netinstall, a następnie przystąpiłem do realizacji tego poradnika. Pierwsza kompilacja zakończyła się błędem, którego rozwiązanie znalazłem tu, natomiast kolejny błąd, który wystąpił to pierwszy z tej listy i "rozwiązałem" go sposobem opisanym w linku. Teraz największym problemem jest brak błędu... Kompilacja trwa w nieskończoność, cały czas coś się tam dzieje, wyskakują w konsoli nowe komunikaty, a terminal jest w lokalizacji /usr/src/linux-2.6.34/arch/x86/vdso Spotkał się ktoś kiedyś z takim problemem?
Z góry dziękuję za pomoc.
kompilacja jądra 2.6.34 trwa w nieskończoność
-
- Posty: 2
- Rejestracja: 01 grudnia 2016, 22:13
Re: kompilacja jądra 2.6.34 trwa w nieskończoność
Nie podałeś podstawowych informacji:
- po co to robisz?
- na czym to robisz?
- jaki jest wymiar Twojej nieskończoności
Na słabszych i starszych maszynach kompilacja jądra może trwać od kilku godzin do kilku dni.
Skompiluj sobie na jakiejś nowoczesnej maszynie.
Podawanie linków do rozwiązań błędów też nie jest właściwe.
Linki po czasie mogą wygasnąć i wątek stanie się mało użyteczny.
Wklej do wątku w znaczniki Quote bardziej ważne informacje z tych podanych wcześniej linków.
- po co to robisz?
- na czym to robisz?
- jaki jest wymiar Twojej nieskończoności

Na słabszych i starszych maszynach kompilacja jądra może trwać od kilku godzin do kilku dni.
Skompiluj sobie na jakiejś nowoczesnej maszynie.
Podawanie linków do rozwiązań błędów też nie jest właściwe.
Linki po czasie mogą wygasnąć i wątek stanie się mało użyteczny.
Wklej do wątku w znaczniki Quote bardziej ważne informacje z tych podanych wcześniej linków.
-
- Posty: 2
- Rejestracja: 01 grudnia 2016, 22:13
Re: kompilacja jądra 2.6.34 trwa w nieskończoność
Za pierwszym razem czekałem 5 godzin i trochę się zniecierpliwiłem, zwłaszcza, że poprzednio na tym samym sprzęcie jądro 2.4 skompilowało się w 40 minut(tyle, że wtedy nowy kernel robiłem do Slackware).
Teraz napotkane błędy #1:
i teraz dostałem kolejnym błędem:
Na VirtualBoxie, gospodarz to Pentium Dual Core T2390 @ 1.86GHz, 3 GB RAM z systemem Ubuntu. Postanowiłem odpalić wirtualną maszynę bez trybu graficznego( bo i tak robił lekką zamułę) i faktycznie po dwóch godzinach sypnęło błędem.dedito pisze: - na czym to robisz?
Na projekt mam filtrowanie w warstwie 7. Maszyna wirtualna ma pełnić zadanie tego filtra, a gospodarzem ma być Debian. Właśnie przez to zależy mi na tym layer7. Ogólnie to jestem też otwarty na wszystkie propozycje o ile są oparte na Debianie i filtrują warstwę aplikacji.dedito pisze: - po co to robisz?
Debian jest świeżo zassany, kernel który kompiluję to 2.6.34, iptables w wersji 1.4.8 oraz iproute2 2.6.34. Na to wszystko patche z powerpack-2.6.34.dedito pisze: Podawanie linków do rozwiązań błędów też nie jest właściwe.
Linki po czasie mogą wygasnąć i wątek stanie się mało użyteczny.
Wklej do wątku w znaczniki Quote bardziej ważne informacje z tych podanych wcześniej linków.
Teraz napotkane błędy #1:
i rozwiązanie:make[2]: *** [arch/x86/kernel/ptrace.o] Error 1
make[1]: *** [arch/x86/kernel] Error 2
make: *** [arch/x86] Error 2
oraz błąd #2 i rozwiązanie:w pliku: linux-2.6.32.59/arch/x86/include/asm/ptrace.h
#ifdef __KERNEL__
#include <linux/init.h>
+#include <linux/linkage.h>
struct cpuinfo_x86;
struct task_struct;
@@ -142,8 +143,8 @@
int error_code, int si_code);
void signal_fault(struct pt_regs *regs, void __user *frame, char *where);
-extern long syscall_trace_enter(struct pt_regs *);
-extern void syscall_trace_leave(struct pt_regs *);
+extern asmregparm long syscall_trace_enter(struct pt_regs *);
+extern asmregparm void syscall_trace_leave(struct pt_regs *);
------------------------------------------------------------------------------------------------------
PROBLEM:-1
------------------------------------------------------------------------------------------------------
gcc: error: elf_i386: No such file or directory
OBJCOPY arch/x86/vdso/vdso32-int80.so
objcopy: 'arch/x86/vdso/vdso32-int80.so.dbg': No such file
make[2]: *** [arch/x86/vdso/vdso32-int80.so] Error 1
make[1]: *** [arch/x86/vdso] Error 2
make: *** [arch/x86] Error 2
------------------------------------------------------------------------------------------------------
SOLUTION:
----------
The problem is that gcc 4.6 doesn't support anymore linker-style architecture options.
Apply the following changes to solve the problem :
In arch/x86/vdso/Makefile :
replace "-m elf_x86_64" by "-m64" on the line starting with VDSO_LDFLAGS_vdso.lds
replace "-m elf_i386" by "-m32" on the line starting with VDSO_LDFLAGS_vdso32.lds
i teraz dostałem kolejnym błędem:
Building modules, stage 2.
MODPOST 1636 modules
ERROR: "__bad_udelay" [drivers/net/tokenring/tms380tr.ko] undefined!
WARNING: modpost: Found 11 section mismatch(es).
To see full detalis build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
/usr/src/linux-2.6.34/scripts/Makefile.modpost:91: polecenia dla obiektu '__modpost nie powiodły się
make[2]: *** [__modpost] Błąd 1
Makefile:1091: polecenia dla obiektu 'modules' nie powiodły się
Make[1]: *** [modules] Błąd 2
make[1]: Opuszczenie katalogu '/usr/src/linux-2.6.34'
debian/ruleset/targets/common.mk:295: polecenia dla obiektu 'debian/stamp/build/kernel' nie powiodły się
make: *** [debian/stamp/build/kernel] Błąd 2
Re: kompilacja jądra 2.6.34 trwa w nieskończoność
Może lepiej ściągnąć źródła kernela z archiwum repozytoriów Debian i na nie nakładać swoje poprawki i kompilować to na wersji Debiana do której został wydany kernel.