LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 753|回复: 1

编译FREEBSD5.1内核的问题

[复制链接]
发表于 2003-7-17 20:32:12 | 显示全部楼层 |阅读模式
以前编译FREEBSD4.8内核,出现错误
现在编译FREEBSD5.1内核,也出现错误
我可是看了FREEBSD技术内幕,FREEBSD用户手册以及若干编译内核的帖子啊,还是没结果,好失败,好伤心



如今出现以下的编译错误,高手指点一下啊。
我的机器配置如下:联想D-LINK DFE-530TX网卡,AMD雷鸟1G,IBM40G 高速硬盘,我的修改后的内核文件内容如下:
#
# GENERIC -- Generic kernel configuration file for FreeBSD/i386
#
# For more information on this file, please read the handbook section on
# Kernel Configuration Files:
#
#    http://www.FreeBSD.org/doc/en_US ... lconfig-config.html
#
# The handbook is also available locally in /usr/share/doc/handbook
# if you've installed the doc distribution, otherwise always see the
# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
# latest information.
#
# An exhaustive list of options and more detailed explanations of the
# device lines is also present in the ../../conf/NOTES and NOTES files.
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.384.2.2 2003/05/31 15:18:41 scottl Exp $

machine                i386
#cpu                I486_CPU
#cpu                I586_CPU
cpu                I686_CPU
ident                TAHAOMEI       

#To statically compile in device wiring instead of /boot/device.hints
#hints                "GENERIC.hints"                #Default places to look for devices.

#makeoptions        DEBUG=-g                #Build kernel with gdb(1) debug symbols

options         SCHED_4BSD                #4BSD scheduler
options         INET                        #InterNETworking
#options         INET6                        #IPv6 communications protocols
options         FFS                        #Berkeley Fast Filesystem
options         SOFTUPDATES                #Enable FFS soft updates support
options         UFS_ACL                        #Support for access control lists
options         UFS_DIRHASH                #Improve performance on big directories
#options         MD_ROOT                        #MD is a potential root device
#options         NFSCLIENT                #Network Filesystem Client
#options         NFSSERVER                #Network Filesystem Server
#options         NFS_ROOT                #NFS usable as root device, requires NFSCLIENT
options         MSDOSFS                        #MSDOS Filesystem
options         CD9660                        #ISO 9660 Filesystem
options         PROCFS                        #Process filesystem (requires PSEUDOFS)
options         PSEUDOFS                #Pseudo-filesystem framework
options         COMPAT_43                #Compatible with BSD 4.3 [KEEP THIS!]
options         COMPAT_FREEBSD4                #Compatible with FreeBSD4
options         SCSI_DELAY=15000        #Delay (in ms) before probing SCSI
#options         KTRACE                        #ktrace(1) support
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
#options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         AHC_REG_PRETTY_PRINT        # Print register bitfields in debug
                                        # output.  Adds ~128k to driver.
options         AHD_REG_PRETTY_PRINT        # Print register bitfields in debug
                                        # output.  Adds ~215k to driver.

# Debugging for use in -current
#options         DDB                        #Enable the kernel debugger
#options         INVARIANTS                #Enable calls of extra sanity checking
options         INVARIANT_SUPPORT        #Extra sanity checks of internal structures, required by INVARIANTS
#options         WITNESS                        #Enable checks to detect deadlocks and cycles
#options         WITNESS_SKIPSPIN        #Don't run witness on spinlocks for speed

# To make an SMP kernel, the next two are needed
#options         SMP                        # Symmetric MultiProcessor Kernel
#options         APIC_IO                        # Symmetric (APIC) I/O

device                isa
device                eisa
device                pci

# Floppy drives
#device                fdc

# ATA and ATAPI devices
device                ata
device                atadisk                        # ATA disk drives
device                atapicd                        # ATAPI CDROM drives
#device                atapifd                        # ATAPI floppy drives
#device                atapist                        # ATAPI tape drives
options         ATA_STATIC_ID                #Static device numbering

# SCSI Controllers
#device                ahb                # EISA AHA1742 family
#device                ahc                # AHA2940 and onboard AIC7xxx devices
#device                ahd                # AHA39320/29320 and onboard AIC79xx devices
#device                amd                # AMD 53C974 (Tekram DC-390(T))
#device                isp                # Qlogic family
#device                mpt                # LSI-Logic MPT-Fusion
#device                ncr                # NCR/Symbios Logic
#device                sym                # NCR/Symbios Logic (newer chipsets + those of `ncr')
#device                trm                # Tekram DC395U/UW/F DC315U adapters

#device                adv                # Advansys SCSI adapters
#device                adw                # Advansys wide SCSI adapters
#device                aha                # Adaptec 154x SCSI adapters
#device                aic                # Adaptec 15[012]x SCSI adapters, AIC-6[23]60.
#device                bt                # Buslogic/Mylex MultiMaster SCSI adapters

#device                ncv                # NCR 53C500
#device                nsp                # Workbit Ninja SCSI-3
#device                stg                # TMC 18C30/18C50

# RAID controllers interfaced to the SCSI subsystem
#device                asr                # DPT SmartRAID V, VI and Adaptec SCSI RAID
#device                ciss                # Compaq Smart RAID 5*
#device                dpt                # DPT Smartcache III, IV - See NOTES for options!
#device                iir                # Intel Integrated RAID
#device                mly                # Mylex AcceleRAID/eXtremeRAID

# SCSI peripherals
#device                scbus                # SCSI bus (required)
#device                ch                # SCSI media changers
#device                da                # Direct Access (disks)
#device                sa                # Sequential Access (tape etc)
#device                cd                # CD
#device                pass                # Passthrough device (direct SCSI access)
#device                ses                # SCSI Environmental Services (and SAF-TE)

# RAID controllers
#device                aac                # Adaptec FSA RAID
#device                aacp                # SCSI passthrough for aac (requires CAM)
#device                amr                # AMI MegaRAID
#device                ida                # Compaq Smart RAID
#device                ips                # IBM (Adaptec) ServeRAID
#device                mlx                # Mylex DAC960 family
#device                pst                # Promise Supertrak SX6000
#device                twe                # 3ware ATA RAID

# atkbdc0 controls both the keyboard and the PS/2 mouse
device                atkbdc                # AT keyboard controller
device                atkbd                # AT keyboard
device                psm                # PS/2 mouse

device                vga                # VGA video card driver

device                splash                # Splash screen and screen saver support

# syscons is the default console driver, resembling an SCO console
device                sc

# Enable this for the pcvt (VT220 compatible) console driver
#device                vt
#options         XSERVER                        # support for X server on a vt console
#options         FAT_CURSOR                # start with block cursor

device                agp                # support several AGP chipsets

# Floating point support - do not disable.
device                npx

# Power management support (see NOTES for more options)
#device                apm
# Add suspend/resume support for the i8254.
device                pmtimer

# PCCARD (PCMCIA) support
# Pcmcia and cardbus bridge support
#device                cbb                        # cardbus (yenta) bridge
#device                pcic                        # ExCA ISA and PCI bridges
#device                pccard                        # PC Card (16-bit) bus
#device                cardbus                        # CardBus (32-bit) bus

# Serial (COM) ports
#device                sio                # 8250, 16[45]50 based serial ports

# Parallel port
#device                ppc
#device                ppbus                # Parallel port bus (required)
#device                lpt                # Printer
#device                plip                # TCP/IP over parallel
#device                ppi                # Parallel port interface device
#device                vpo                # Requires scbus and da


# PCI Ethernet NICs.
#device                de                # DEC/Intel DC21x4x (``Tulip'')
#device                em                # Intel PRO/1000 adapter Gigabit Ethernet Card
#device                txp                # 3Com 3cR990 (``Typhoon'')
#device                vx                # 3Com 3c590, 3c595 (``Vortex'')

# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device                miibus                # MII bus support
#device                dc                # DEC/Intel 21143 and various workalikes
#device                fxp                # Intel EtherExpress PRO/100B (82557, 82558)
#device                pcn                # AMD Am79C97x PCI 10/100 (precedence over 'lnc')
#device                rl                # RealTek 8129/8139
#device                sf                # Adaptec AIC-6915 (``Starfire'')
#device                sis                # Silicon Integrated Systems SiS 900/SiS 7016
#device                sk                # SysKonnect SK-984x and SK-982x gigabit ethernet
#device                ste                # Sundance ST201 (D-Link DFE-550TX)
#device                ti                # Alteon Networks Tigon I/II gigabit ethernet
#device                tl                # Texas Instruments ThunderLAN
#device                tx                # SMC EtherPower II (83c170 ``EPIC'')
device                vr                # VIA Rhine, Rhine II
#device                wb                # Winbond W89C840F
#device                xl                # 3Com 3c90x (``Boomerang'', ``Cyclone'')
#device                bge                # Broadcom BCM570xx Gigabit Ethernet

# ISA Ethernet NICs.  pccard nics included.
#device                cs                # Crystal Semiconductor CS89x0 NIC
# 'device ed' requires 'device miibus'
#device                ed                # NE[12]000, SMC Ultra, 3c503, DS8390 cards
#device                ex                # Intel EtherExpress Pro/10 and Pro/10+
#device                ep                # Etherlink III based cards
#device                fe                # Fujitsu MB8696x based cards
#device                ie                # EtherExpress 8/16, 3C507, StarLAN 10 etc.
#device                lnc                # NE2100, NE32-VL Lance Ethernet cards
#device                sn                # SMC's 9000 series of ethernet chips
#device                xe                # Xircom pccard ethernet

# ISA devices that use the old ISA shims
#device                le

# Wireless NIC cards
#device                wlan                # 802.11 support
#device                an                # Aironet 4500/4800 802.11 wireless NICs.
#device                awi                # BayStack 660 and others
#device                wi                # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
#device                wl                # Older non 802.11 Wavelan wireless NIC.

# Pseudo devices - the number indicates how many units to allocate.
device                random                # Entropy device
device                loop                # Network loopback
device                ether                # Ethernet support
#device                sl                # Kernel SLIP
#device                ppp                # Kernel PPP
#device                tun                # Packet tunnel.
device                pty                # Pseudo-ttys (telnet etc)
#device                md                # Memory "disks"
#device                gif                # IPv6 and IPv4 tunneling
#device                faith                # IPv6-to-IPv4 relaying (translation)

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
device                bpf                # Berkeley packet filter

# USB support
#device                uhci                # UHCI PCI->USB interface
#device                ohci                # OHCI PCI->USB interface
#device                usb                # USB Bus (required)
#device                udbp                # USB Double Bulk Pipe devices
#device                ugen                # Generic
#device                uhid                # "Human Interface Devices"
#device                ukbd                # Keyboard
#device                ulpt                # Printer
#device                umass                # Disks/Mass storage - Requires scbus and da
#device                ums                # Mouse
#device                urio                # Diamond Rio 500 MP3 player
#device                uscanner        # Scanners
# USB Ethernet, requires mii
#device                aue                # ADMtek USB ethernet
#device                axe                # ASIX Electronics USB ethernet
#device                cue                # CATC USB ethernet
#device                kue                # Kawasaki LSI USB ethernet

# FireWire support
device                firewire        # FireWire bus code
device                sbp                # SCSI over FireWire (Requires scbus and da)
device                fwe                # Ethernet over FireWire (non-standard!)



========================================================

结果编译的时候出现如下的错误提示:

awk -f /usr/src/sys/tools/vnode_if.awk /usr/src/sys/kern/vnode_if.src -c
cc -c -O -pipe -mcpu=pentiumpro -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/usr/src/sys -I/usr/src/sys/dev -I/usr/src/sys/contrib/dev/acpica -I/usr/src/sys/contrib/ipfilter -D_KERNEL -include opt_global.h -fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2 -ffreestanding -Werror  vnode_if.c
touch hack.c
cc  -shared -nostdlib hack.c -o hack.So
rm -f hack.c
sh /usr/src/sys/conf/newvers.sh TAHAOMEI
cc -c -O -pipe -mcpu=pentiumpro -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -std=c99  -nostdinc -I-  -I. -I/usr/src/sys -I/usr/src/sys/dev -I/usr/src/sys/contrib/dev/acpica -I/usr/src/sys/contrib/ipfilter -D_KERNEL -include opt_global.h -fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2 -ffreestanding -Werror  vers.c
linking kernel
sbp.o: In function `sbp_probe_target':
sbp.o(.text+0x919): undefined reference to `xpt_freeze_devq'
sbp.o(.text+0xa0f): undefined reference to `xpt_freeze_devq'
sbp.o: In function `sbp_cam_scan_lun':
sbp.o(.text+0xf78): undefined reference to `xpt_setup_ccb'
sbp.o(.text+0xf83): undefined reference to `xpt_action'
sbp.o(.text+0xf9d): undefined reference to `xpt_release_devq'
sbp.o: In function `sbp_cam_scan_target':
sbp.o(.text+0x1053): undefined reference to `xpt_setup_ccb'
sbp.o(.text+0x107a): undefined reference to `xpt_action'
sbp.o(.text+0x1094): undefined reference to `xpt_release_devq'
sbp.o: In function `sbp_do_attach':
sbp.o(.text+0x1133): undefined reference to `xpt_periph'
sbp.o(.text+0x1142): undefined reference to `xpt_create_path'
sbp.o: In function `sbp_agent_reset_callback':
sbp.o(.text+0x1251): undefined reference to `xpt_release_devq'
sbp.o: In function `sbp_orb_pointer':
sbp.o(.text+0x14fd): undefined reference to `xpt_done'
sbp.o: In function `sbp_recv1':
sbp.o(.text+0x2089): undefined reference to `xpt_freeze_devq'
sbp.o(.text+0x23ae): undefined reference to `xpt_done'
sbp.o: In function `sbp_attach':
sbp.o(.text+0x2518): undefined reference to `cam_simq_alloc'
sbp.o(.text+0x258c): undefined reference to `cam_sim_alloc'
sbp.o(.text+0x259b): undefined reference to `cam_simq_free'
sbp.o(.text+0x25b3): undefined reference to `xpt_bus_register'
sbp.o(.text+0x25da): undefined reference to `xpt_periph'
sbp.o(.text+0x25e9): undefined reference to `xpt_create_path'
sbp.o(.text+0x26d1): undefined reference to `cam_sim_free'
sbp.o: In function `sbp_detach':
sbp.o(.text+0x2835): undefined reference to `xpt_free_path'
sbp.o(.text+0x2843): undefined reference to `xpt_bus_deregister'
sbp.o: In function `sbp_cam_detach_target':
sbp.o(.text+0x2a96): undefined reference to `xpt_release_devq'
sbp.o(.text+0x2ab8): undefined reference to `xpt_async'
sbp.o(.text+0x2ac3): undefined reference to `xpt_free_path'
sbp.o: In function `sbp_target_reset':
sbp.o(.text+0x2b39): undefined reference to `xpt_freeze_devq'
sbp.o: In function `sbp_timeout':
sbp.o(.text+0x2ca1): undefined reference to `xpt_freeze_devq'
sbp.o: In function `sbp_action1':
sbp.o(.text+0x339b): undefined reference to `xpt_done'
sbp.o: In function `sbp_abort_ocb':
sbp.o(.text+0x3a20): undefined reference to `xpt_done'
*** Error code 1

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

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.
 楼主| 发表于 2003-7-17 21:24:40 | 显示全部楼层
哈哈,搞定了,将最后面的
# FireWire support
device firewire # FireWire bus code
device sbp # SCSI over FireWire (Requires scbus and da)
device fwe # Ethernet over FireWire (non-standard!)

全部注销就编译通过了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表