URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID15
Нить номер: 2810
[ Назад ]

Исходное сообщение
"ошибка при компиляции ядра FreeBSD 7.2"

Отправлено Александр , 05-Ноя-09 11:38 
Здравствуйте. Устанавливаю впервые FreeBSD 7.2, по мануалу. Обновил порты, начинаю собирать ядро командой "make buildkernel KERNCONF=AFZGATE && make installkernel KERNCONF=AFZGATE". Вылазит куча таких ошибок:
kern_intr.o(.text+0x155): In function `intr_event_schedule_thread':
: undefined reference to `sched_add'
kern_intr.o(.text+0x274): In function `ithread_update':
: undefined reference to `sched_prio'
kern_intr.o(.text+0x8a8): In function `intr_event_add_handler':
: undefined reference to `sched_class'
kern_intr.o(.text+0xfcf): In function `intr_event_destroy':
: undefined reference to `sched_add'
kern_kse.o(.text+0x1f5): In function `thread_schedule_upcall':
: undefined reference to `sched_fork_thread'
kern_kse.o(.text+0xa2c): In function `thread_switchout':
: undefined reference to `sched_add'
kern_kse.o(.text+0x32db): In function `kse_create':
: undefined reference to `sched_add'
kern_kthread.o(.text+0x5e4): In function `kthread_create':
: undefined reference to `sched_add'
kern_malloc.o(.text+0x2f8): In function `malloc_type_freed':
: undefined reference to `critical_enter'
kern_malloc.o(.text+0x326): In function `malloc_type_freed':
: undefined reference to `critical_exit'
kern_malloc.o(.text+0x427): In function `malloc_type_zone_allocated':
: undefined reference to `critical_enter'
kern_malloc.o(.text+0x479): In function `malloc_type_zone_allocated':
: undefined reference to `critical_exit'
kern_proc.o(.text+0x92c): In function `fill_kinfo_thread':
: undefined reference to `sched_pctcpu'
kern_proc.o(.text+0x1577): In function `procinit':
: undefined reference to `sched_sizeof_proc'
kern_resource.o(.text+0x14b2): In function `rtp_to_pri':
: undefined reference to `sched_class'
kern_resource.o(.text+0x14c8): In function `rtp_to_pri':
: undefined reference to `sched_user_prio'
kern_resource.o(.text+0x1589): In function `rtp_to_pri':
: undefined reference to `sched_prio'
kern_resource.o(.text+0x1613): In function `donice':
: undefined reference to `sched_nice'
kern_shutdown.o(.text+0xca3): In function `panic':
: undefined reference to `critical_enter'
kern_shutdown.o(.text+0xcf3): In function `panic':
: undefined reference to `critical_exit'
kern_sig.o(.text+0x3626): In function `tdsigwakeup':
: undefined reference to `sched_prio'
kern_sig.o(.text+0x363b): In function `tdsigwakeup':
: undefined reference to `sched_prio'
kern_subr.o(.text+0x517): In function `uio_yield':
: undefined reference to `sched_prio'
kern_synch.o(.text+0x8): In function `loadav':
: undefined reference to `sched_load'
kern_synch.o(.text+0x107): In function `setrunnable':
: undefined reference to `sched_wakeup'
kern_synch.o(.text+0x1f5): In function `mi_switch':
: undefined reference to `sched_switch'
kern_synch.o(.text+0x2e6): In function `yield':
: undefined reference to `sched_prio'
kern_synch.o(.text+0x608): In function `_sleep':
: undefined reference to `sched_prio'
kern_thr.o(.text+0x4be): In function `create_thread':
: undefined reference to `sched_fork_thread'
kern_thr.o(.text+0x56d): In function `create_thread':
: undefined reference to `sched_prio'
kern_thr.o(.text+0x587): In function `create_thread':
: undefined reference to `sched_add'
kern_thread.o(.text+0x2fa): In function `thread_suspend_one':
: undefined reference to `sched_sleep'
kern_thread.o(.text+0x382): In function `thread_suspend_switch':
: undefined reference to `sched_sleep'
kern_thread.o(.text+0x804): In function `thread_exit':
: undefined reference to `sched_exit_thread'
kern_thread.o(.text+0x8c0): In function `thread_exit':
: undefined reference to `sched_throw'
kern_thread.o(.text+0xbbc): In function `threadinit':
: undefined reference to `sched_sizeof_thread'
kern_thread.o(.text+0x120a): In function `thread_wait':
: undefined reference to `sched_relinquish'
kern_thread.o(.text+0x169c): In function `thread_init':
: undefined reference to `sched_newthread'
kern_thread.o(.text+0x1b28): In function `thread_dtor':
: undefined reference to `sched_newthread'
kern_time.o(.text+0x2058): In function `kern_clock_gettime':
: undefined reference to `critical_enter'
kern_time.o(.text+0x208d): In function `kern_clock_gettime':
: undefined reference to `critical_exit'
kern_umtx.o(.text+0x6de): In function `umtx_propagate_priority':
: undefined reference to `sched_lend_user_prio'
kern_umtx.o(.text+0x4bea): In function `do_unlock_umutex':
: undefined reference to `sched_unlend_user_prio'
kern_umtx.o(.text+0x5084): In function `do_unlock_umutex':
: undefined reference to `sched_unlend_user_prio'
kern_umtx.o(.text+0x6287): In function `_do_lock_umutex':
: undefined reference to `sched_unlend_user_prio'
kern_umtx.o(.text+0x6980): In function `_do_lock_umutex':
: undefined reference to `sched_unlend_user_prio'
kern_umtx.o(.text+0x6fd6): In function `_do_lock_umutex':
: undefined reference to `sched_unlend_user_prio'
kern_umtx.o(.text+0x74d2): In function `_do_lock_umutex':
: undefined reference to `sched_lend_user_prio'
kern_umtx.o(.text+0x7cc1): In function `_do_lock_umutex':
: undefined reference to `sched_lend_user_prio'
p1003_1b.o(.text+0x2f0): In function `sched_yield':
: undefined reference to `sched_relinquish'
subr_sleepqueue.o(.text+0x11d): In function `sleepq_resume_thread':
: undefined reference to `sched_prio'
subr_sleepqueue.o(.text+0x67f): In function `sleepq_switch':
: undefined reference to `sched_sleep'
subr_taskqueue.o(.text+0x534): In function `taskqueue_start_threads':
: undefined reference to `sched_prio'
subr_taskqueue.o(.text+0x544): In function `taskqueue_start_threads':
: undefined reference to `sched_add'
subr_trap.o(.text+0x45f): In function `ast':
: undefined reference to `sched_prio'
subr_trap.o(.text+0xae): In function `userret':
: undefined reference to `sched_userret'
subr_turnstile.o(.text+0x3b3): In function `propagate_priority':
: undefined reference to `sched_lend_prio'
subr_turnstile.o(.text+0x76c): In function `turnstile_disown':
: undefined reference to `sched_unlend_prio'
subr_turnstile.o(.text+0x8fa): In function `turnstile_unpend':
: undefined reference to `sched_unlend_prio'
subr_turnstile.o(.text+0x997): In function `turnstile_unpend':
: undefined reference to `sched_add'
subr_turnstile.o(.text+0x101b): In function `turnstile_claim':
: undefined reference to `sched_lend_prio'
tty.o(.text+0x1429): In function `proc_sum':
: undefined reference to `sched_pctcpu'
tty.o(.text+0x26df): In function `ttyinfo':
: undefined reference to `sched_pctcpu'
tty.o(.text+0x2736): In function `ttyinfo':
: undefined reference to `sched_pctcpu'
tty.o(.text+0x2871): In function `ttyinfo':
: undefined reference to `sched_pctcpu'
ffs_snapshot.o(.text+0x63c5): In function `ffs_snapshot':
: undefined reference to `sched_nice'
ffs_snapshot.o(.text+0x6dab): In function `ffs_snapshot':
: undefined reference to `sched_nice'
uma_core.o(.text+0x3599): In function `uma_zfree_arg':
: undefined reference to `critical_enter'
uma_core.o(.text+0x35e1): In function `uma_zfree_arg':
: undefined reference to `critical_exit'
uma_core.o(.text+0x3606): In function `uma_zfree_arg':
: undefined reference to `critical_enter'
uma_core.o(.text+0x37b8): In function `uma_zfree_arg':
: undefined reference to `critical_exit'
uma_core.o(.text+0x37c5): In function `uma_zfree_arg':
: undefined reference to `critical_exit'
uma_core.o(.text+0x38f9): In function `uma_zalloc_arg':
: undefined reference to `critical_enter'
uma_core.o(.text+0x3943): In function `uma_zalloc_arg':
: undefined reference to `critical_exit'
uma_core.o(.text+0x3967): In function `uma_zalloc_arg':
: undefined reference to `critical_enter'
uma_core.o(.text+0x3b13): In function `uma_zalloc_arg':
: undefined reference to `critical_exit'
uma_core.o(.text+0x3b6f): In function `uma_zalloc_arg':
: undefined reference to `critical_exit'
vm_pageout.o(.text+0x146c): In function `vm_pageout':
: undefined reference to `sched_nice'
vm_zeroidle.o(.text+0x171): In function `vm_pagezero':
: undefined reference to `sched_runnable'
vm_zeroidle.o(.text+0x2e8): In function `pagezero_start':
: undefined reference to `sched_class'
vm_zeroidle.o(.text+0x2f8): In function `pagezero_start':
: undefined reference to `sched_prio'
vm_zeroidle.o(.text+0x308): In function `pagezero_start':
: undefined reference to `sched_add'
intr_machdep.o(.text+0x244): In function `intr_execute_handlers':
: undefined reference to `critical_enter'
intr_machdep.o(.text+0x2a4): In function `intr_execute_handlers':
: undefined reference to `critical_exit'
local_apic.o(.text+0xc39): In function `lapic_handle_timer':
: undefined reference to `critical_enter'
local_apic.o(.text+0xd1a): In function `lapic_handle_timer':
: undefined reference to `critical_exit'
machdep.o(.text+0xb5c): In function `spinlock_exit':
: undefined reference to `critical_exit'
machdep.o(.text+0x1f62): In function `cpu_idle':
: undefined reference to `sched_runnable'
machdep.o(.text+0xba6): In function `spinlock_enter':
: undefined reference to `critical_enter'
pmap.o(.text+0x28fc): In function `pmap_activate':
: undefined reference to `critical_enter'
pmap.o(.text+0x297d): In function `pmap_activate':
: undefined reference to `critical_exit'
sys_machdep.o(.text+0xc8f): In function `i386_extend_pcb':
: undefined reference to `critical_enter'
sys_machdep.o(.text+0xd31): In function `i386_extend_pcb':
: undefined reference to `critical_exit'
sys_machdep.o(.text+0xf30): In function `sysarch':
: undefined reference to `critical_enter'
sys_machdep.o(.text+0xfb2): In function `sysarch':
: undefined reference to `critical_exit'
sys_machdep.o(.text+0x104b): In function `sysarch':
: undefined reference to `critical_enter'
sys_machdep.o(.text+0x10c9): In function `sysarch':
: undefined reference to `critical_exit'
vm86.o(.text+0x101): In function `vm86_intcall':
: undefined reference to `critical_enter'
vm86.o(.text+0x110): In function `vm86_intcall':
: undefined reference to `critical_exit'
vm86.o(.text+0x7b1): In function `vm86_datacall':
: undefined reference to `critical_enter'
vm86.o(.text+0x7c1): In function `vm86_datacall':
: undefined reference to `critical_exit'
vm_machdep.o(.text+0xb43): In function `cpu_set_user_tls':
: undefined reference to `critical_enter'
vm_machdep.o(.text+0xbaf): In function `cpu_set_user_tls':
: undefined reference to `critical_exit'
pci_cfgreg.o(.text+0x195): In function `pci_cfgregwrite':
: undefined reference to `critical_enter'
pci_cfgreg.o(.text+0x292): In function `pci_cfgregwrite':
: undefined reference to `critical_exit'
pci_cfgreg.o(.text+0x699): In function `pcireg_cfgread':
: undefined reference to `critical_enter'
pci_cfgreg.o(.text+0x786): In function `pcireg_cfgread':
: undefined reference to `critical_exit'
*** Error code 1

Stop in /usr/obj/usr/src/sys/AFZGATE.
*** Error code 1

Подскажите, пожалуйста, где искать проблему?


Содержание

Сообщения в этом обсуждении
"ошибка при компиляции ядра FreeBSD 7.2"
Отправлено e , 05-Ноя-09 12:11 
>Здравствуйте. Устанавливаю впервые FreeBSD 7.2, по мануалу. Обновил порты, начинаю собирать ядро
>командой "make buildkernel KERNCONF=AFZGATE && make installkernel KERNCONF=AFZGATE". Вылазит куча таких
>ошибок:
>kern_intr.o(.text+0x155): In function `intr_event_schedule_thread':
>Подскажите, пожалуйста, где искать проблему?

Строку make buildkernel KERNCONF=AFZGATE && make installkernel KERNCONF=AFZGATE
можно заменить более лаконичной make kernel KERNCONF=AFZGATE.
А вот что касается ошибки, то лично мне трудно судить о причинах не видя конфига ядра.
Приведите его текст и на всякий случай содержимое /etc/make.conf

И еще. Вы установили 7.2 с дистрибутивного диска? Исходники системы взяли оттуда или скачали из сети? Если из сети, то покажите sup-файл.



"ошибка при компиляции ядра FreeBSD 7.2"
Отправлено Александр , 05-Ноя-09 12:57 
>А вот что касается ошибки, то лично мне трудно судить о причинах
>не видя конфига ядра.

cpu             I686_CPU
ident           AFZGATE

options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=100
options         IPFIREWALL_FORWARD
options         IPDIVERT
options         DUMMYNET

options         INET                    # InterNETworking
options         FFS                     # Berkeley Fast Filesystem
options         SOFTUPDATES             # Enable FFS soft updates support
options         UFS_ACL                 # Support for access control lists
options         CD9660                  # ISO 9660 Filesystem
options         PROCFS                  # Process filesystem (requires PSEUDOFS)
options         COMPAT_43TTY            # BSD 4.3 TTY compat [KEEP THIS!]
options         SYSVSHM                 # SYSV-style shared memory
options         SYSVMSG                 # SYSV-style message queues
options         SYSVSEM                 # SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions


>Приведите его текст и на всякий случай содержимое /etc/make.conf
>

Файла такого нет.

>И еще. Вы установили 7.2 с дистрибутивного диска? Исходники системы взяли оттуда
>или скачали из сети? Если из сети, то покажите sup-файл.

Устанавливал с дистрибутивного диска. Исходники брал с него.


"ошибка при компиляции ядра FreeBSD 7.2"
Отправлено Translucent , 05-Ноя-09 13:04 
cpu             I686_CPU
ident           AFZGATE

options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=100
options         IPFIREWALL_FORWARD
options         IPDIVERT
options         DUMMYNET

options         INET                    # InterNETworking
options         FFS                     # Berkeley Fast Filesystem
options         SOFTUPDATES             # Enable FFS soft updates support
options         UFS_ACL                 # Support for access control lists
options         CD9660                  # ISO 9660 Filesystem
options         PROCFS                  # Process filesystem (requires PSEUDOFS)
options         COMPAT_43TTY            # BSD 4.3 TTY compat [KEEP THIS!]
options         SYSVSHM                 # SYSV-style shared memory
options         SYSVMSG                 # SYSV-style message queues
options         SYSVSEM                 # SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions

device          apic                    # I/O APIC
device          cpufreq
device          pci
device          fdc
device          ata
device          atadisk         # ATA disk drives
device          atapicd         # ATAPI CDROM drives
device          atkbdc          # AT keyboard controller
device          atkbd           # AT keyboard
device          vga             # VGA video card driver
device          splash          # Splash screen and screen saver support
device          sc
device          agp             # support several AGP chipsets
device          sio             # 8250, 16[45]50 based serial ports
device          uart            # Generic UART driver
device          miibus          # MII bus support
device          miibus          # MII bus support

Вот такой конфиг правильный, первый раз почему то не весь вставился.


"ошибка при компиляции ядра FreeBSD 7.2"
Отправлено mr_gfd , 05-Ноя-09 13:28 
Что-то я не вижу тут указаний какой скедьюлер (планировщик) собирать...

"ошибка при компиляции ядра FreeBSD 7.2"
Отправлено e , 05-Ноя-09 13:34 

>[оверквотинг удален]
>options         CD9660  
>options         PROCFS  
>options         COMPAT_43TTY  
>options         SYSVSHM  
>options         SYSVMSG  
>options         SYSVSEM  
>options         _KPOSIX_PRIORITY_SCHEDULING # POSIX
>device          miibus          # MII bus support
>device          miibus          # MII bus support
>Вот такой конфиг правильный, первый раз почему то не весь вставился.

На мой взгляд, вы повырезали лишнего. Как минимум отсутствует шедулер.
Попробуйте оставить все options из GENERIC-конфига + добавить ваши IPFIREWALL-* итд. ну и нужные вам устройства, и попытаться собрать еще раз. И опции удалять нужно осторожно - читайте что они обозначают перед удалением.

PS. и еще у вас два раза указано устройство miibus, хотя по идее оно вам вообще не нужно, т.к. в ядро вы не включили ни одного драйвера сетевой карты, которые бы использовали miibus. В общем руководствуйтесь правилом "семь раз отмерь, один раз отрежь" :)


"ошибка при компиляции ядра FreeBSD 7.2"
Отправлено Translucent , 05-Ноя-09 16:40 
>На мой взгляд, вы повырезали лишнего. Как минимум отсутствует шедулер.
>Попробуйте оставить все options из GENERIC-конфига + добавить ваши IPFIREWALL-* итд. ну
>и нужные вам устройства, и попытаться собрать еще раз. И опции
>удалять нужно осторожно - читайте что они обозначают перед удалением.
>
>PS. и еще у вас два раза указано устройство miibus, хотя по
>идее оно вам вообще не нужно, т.к. в ядро вы не
>включили ни одного драйвера сетевой карты, которые бы использовали miibus. В
>общем руководствуйтесь правилом "семь раз отмерь, один раз отрежь" :)

Перепроверил всё ещё раз. Действительно, "семь раз отмерь, один отрежь". Ядро скомпилировалось. Всем спасибо за участие.