<<< Previous topic - Next topic >>> |
|
Author |
Message |
ape
Joined: 18 Aug 2010 Posts: 3 Location: Würselen
|
Posted: 30.08.2010, 14:02 Post subject: [ERLEDIGT]kernel kompileren: linux-2.6.18.8-dmp-ssv1 |
|
|
Hallo,
beim Kompilieren des Kernels bekomme ich ständig Fehlermeldungen und der Kernel kann nicht übersetzt werden.
Die Vorgehensweise ist wie folgt:
Code: | tar xfz linux-2.6.18.8-dmp-ssv1.tar.gz
cp CONFIG-DNP2486-2.6.18.8-SSV20080404 ./linux-2.6.18.8-dmp-ssv1/.config
cd linux-2.6.18.8-dmp-ssv1
make oldconfig
make bzImage >/dev/null |
Da ich hier kein make menuconfig ausführe sollte eigentlich bei der Übersetzung zu keiner Fehlermeldung kommen...
Die Fehlermeldungen:
Code: | fs/partitions/acorn.c:31: warning: ‘adfs_partition’ defined but not used
fs/partitions/acorn.c:71: warning: ‘riscix_partition’ defined but not used
fs/partitions/acorn.c:121: warning: ‘linux_partition’ defined but not used
ipc/msg.c: In function ‘sys_msgctl’:
ipc/msg.c:341: warning: ‘setbuf.qbytes’ may be used uninitialized in this function
ipc/msg.c:341: warning: ‘setbuf.uid’ may be used uninitialized in this function
ipc/msg.c:341: warning: ‘setbuf.gid’ may be used uninitialized in this function
ipc/msg.c:341: warning: ‘setbuf.mode’ may be used uninitialized in this function
include/asm/byteorder.h:5:28: error: linux/compiler.h: Datei oder Verzeichnis nicht gefunden
In file included from drivers/mca/mca-legacy.c:31:
include/linux/mca-legacy.h:12:2: warning: #warning "MCA legacy - please move your driver to the new sysfs api"
In file included from drivers/mca/mca-legacy.c:31:
include/linux/mca-legacy.h:12:2: warning: #warning "MCA legacy - please move your driver to the new sysfs api"
drivers/pci/msi.c: In function ‘msi_capability_init’:
drivers/pci/msi.c:772: warning: overflow in implicit constant conversion
drivers/usb/core/hcd.c: In function ‘usb_hcd_poll_rh_status’:
include/asm/string.h:238: warning: array subscript is above array bounds
arch/i386/math-emu/fpu_entry.c: In function ‘save_i387_soft’:
arch/i386/math-emu/fpu_entry.c:745: warning: ignoring return value of ‘__copy_to_user’, declared with attribute warn_unused_result
arch/i386/math-emu/reg_ld_str.c: In function ‘FPU_load_int64’:
arch/i386/math-emu/reg_ld_str.c:247: warning: ignoring return value of ‘copy_from_user’, declared with attribute warn_unused_result
arch/i386/math-emu/reg_ld_str.c: In function ‘FPU_store_int64’:
arch/i386/math-emu/reg_ld_str.c:910: warning: ignoring return value of ‘copy_to_user’, declared with attribute warn_unused_result
arch/i386/math-emu/reg_ld_str.c: In function ‘fstenv’:
arch/i386/math-emu/reg_ld_str.c:1339: warning: ignoring return value of ‘__copy_to_user’, declared with attribute warn_unused_result
arch/i386/math-emu/reg_ld_str.c: In function ‘fsave’:
arch/i386/math-emu/reg_ld_str.c:1362: warning: ignoring return value of ‘__copy_to_user’, declared with attribute warn_unused_result
arch/i386/math-emu/reg_ld_str.c:1364: warning: ignoring return value of ‘__copy_to_user’, declared with attribute warn_unused_result
arch/i386/math-emu/reg_ld_str.c: In function ‘FPU_store_double’:
arch/i386/math-emu/reg_ld_str.c:416: warning: ‘l[0]’ may be used uninitialized in this function
kernel/built-in.o: In function `getnstimeofday':
(.text+0xb63c): undefined reference to `__umoddi3'
kernel/built-in.o: In function `do_gettimeofday':
(.text+0xb6db): undefined reference to `__udivdi3'
kernel/built-in.o: In function `do_gettimeofday':
(.text+0xb6f8): undefined reference to `__umoddi3'
kernel/built-in.o: In function `do_timer':
(.text+0xc59b): undefined reference to `__udivdi3'
kernel/built-in.o: In function `do_timer':
(.text+0xc5b8): undefined reference to `__umoddi3'
make: *** [.tmp_vmlinux1] Fehler 1 |
Das System, auf dem der Kernel übersetzt wird, ist ein Debian Lenny 5.0.5 und kann alle Vanilia-Kernel ohne Probleme übersetzen.
Frage: Ist Ihre Source-Datei korrekt?
Mit freundlichen Grüßen
J. Weintrit
[EDIT]
Der Kernel darf nicht mit der GCC-Version 4.3 übersetzt werden. Mit GCC-4.1 wird der Kernel ordnugsgemäß übersetzt. |
|
Back to top |
|
|
hne
Joined: 11 Jul 2008 Posts: 210 Location: Hannover
|
Posted: 30.08.2010, 15:39 Post subject: |
|
|
Ja, die Quellen sind korrek.
Das ist eine Eigenart des neuen GCC, der versucht die instring Funktionen für die Division aus der glibc zu benutzen. Was beim Kernel natürlich nicht geht. GCC und Kernel-Developer haben schon heftigst darüber diskutiert, siehe GCC Bug 31990.
Sie können Tips wie z.B. #13 oder #17 aus einem Forum versuchen.
Wir empfehlen den GCC 4.1.2 zu benutzen, oder besser die geammte Entwicklungsumgebung des Debian Etch. Damit hat es funktioniert und es sind keine weiteren Überraschungen zu erwarten. _________________ Henry Nestler |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|