NetBSD/mac68kが自動ブートするようにするNetBSD/mac68kでカーネルのクロスコンパイル

2009年11月11日

NetBSD/mac68kでカーネルのセルフコンパイル

NetBSDをインストールしたら、まずはマシンに合ったカーネルの生成だと思う。
GENERICカーネルには汎用に作られているため、自分用にチューンアップします。

しかし、68kMacでのセルフコンパイルは激しくオヌヌメできない…

カーネルソースの展開なんかは余裕でできると思われるので省略。

カーネルのコンフィグレーションをします。

$ cd /usr/src/sys/arch/mac68k/conf
$ cp GENERIC WOZNIAK
                     ←別にホスト名に合わせなくていい
$ vi WOZNIAK                                     ←適当に編集する
$ config WOZNIAK

カーネルのコンパイルをする。
$ cd ../compile/WOZNIAK
$ make depend
                                ←けっこう時間がかかる
$ make                                            ←かなり時間がかかる

なにも問題がなければ、6時間ほどで終われます。


以下は使用したコンフィグレーションです。
# $NetBSD: GENERIC,v 1.191 2008/08/10 15:31:21 tls Exp $ # # GENERIC machine description file # # This machine description file is used to generate the default NetBSD # kernel. The generic kernel does not include all options, subsystems # and device drivers, but should be useful for most applications. # # The machine description file can be customised for your specific # machine to reduce the kernel size and improve its performance. # # For further information on compiling NetBSD kernels, see the config(8) # man page. # # For further information on hardware support for this architecture, see # the intro(4) man page. For further information about kernel options # for this architecture, see the options(4) man page. For an explanation # of each device driver in this file see the section 4 man page for the # device. include "arch/mac68k/conf/std.mac68k" makeoptions COPTS="-O2 -pipe -m68040" options INCLUDE_CONFIG_FILE # embed config file in kernel binary #ident "GENERIC-$Revision: 1.191 $" maxusers 16 # estimated number of users # CPU support. At least one is REQUIRED. options M68040 #options M68030 #options M68020 # Note: must have 68851 PMMU # CPU-related options. options FPSP #options FPU_EMULATE # Standard system options #options INSECURE # disable kernel security levels options RTC_OFFSET=540 # hardware clock is this many mins. west of GMT options NTP # NTP phase/frequency locked loop #options KTRACE # system call tracing via ktrace(1) options SYSVMSG # System V-like message queues options SYSVSEM # System V-like semaphores options SYSVSHM # System V-like memory sharing options P1003_1B_SEMAPHORE # p1003.1b semaphore support options LKM # loadable kernel modules options USERCONF # userconf(4) support #options PIPE_SOCKETPAIR # smaller, but slower pipe(2) options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel # Enable experimental buffer queue strategy for better responsiveness under # high disk I/O load. Use it with caution - it's not proven to be stable yet. #options BUFQ_READPRIO #options BUFQ_PRIOCSCAN # Diagnostic/debugging support options #options DIAGNOSTIC # cheap kernel consistency checks #options DEBUG # expensive debugging checks/support #options LOCKDEBUG # kernel lock debugging options KMEMSTATS # kernel memory statistics (vmstat -m) #options DDB # in-kernel debugger #options DDB_HISTORY_SIZE=100 # enable history editing in DDB #options KGDB # remote debugger #options KGDB_DEV=0xc01 # kgdb device number (dev_t) #options KGDB_DEVRATE=38400 # baud rate #makeoptions DEBUG="-g" # compile full symbol table # Compatibility options #options COMPAT_NOMID # compatibility with 386BSD, BSDI, NetBSD 0.8, #options COMPAT_09 # NetBSD 0.9, #options COMPAT_10 # NetBSD 1.0, #options COMPAT_11 # NetBSD 1.1, #options COMPAT_12 # NetBSD 1.2, #options COMPAT_13 # NetBSD 1.3, #options COMPAT_14 # NetBSD 1.4, #options COMPAT_15 # NetBSD 1.5, #options COMPAT_16 # NetBSD 1.6, #options COMPAT_20 # NetBSD 2.0, #options COMPAT_30 # NetBSD 3.0, options COMPAT_40 # NetBSD 4.0 compatibility. options COMPAT_43 # and 4.3BSD #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. # The following is needed to run pre-NetBSD 1.6 binaries under ELF. options COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out options EXEC_AOUT # support for exec'ing a.out #options COMPAT_LINUX # compatibility with Linux/m68k binaries #options COMPAT_M68K4K # compatibility with NetBSD/m68k4k binaries #options COMPAT_SUNOS # compatibility with SunOS 4.x binaries #options COMPAT_SVR4 # compatibility with SVR4 binaries options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. # File systems file-system FFS # UFS #file-system EXT2FS # second extended file system (linux) #file-system LFS # log-structured file system file-system MFS # memory file system file-system NFS # Network File System client file-system CD9660 # ISO 9660 + Rock Ridge file system #file-system MSDOSFS # MS-DOS file system #file-system FDESC # /dev/fd file-system KERNFS # /kern #file-system NULLFS # loopback file system #file-system OVERLAY # overlay file system #file-system PORTAL # portal filesystem (still experimental) file-system PROCFS # /proc #file-system UMAPFS # NULLFS + uid and gid remapping #file-system UNION # union file system #file-system CODA # Venus/Coda distributed file system file-system PTYFS # /dev/pts/N support file-system TMPFS # Efficient memory file-system #file-system UDF # experimental - OSTA UDF CD/DVD file-system #file-system HFS # experimental - Apple HFS+ (read-only) # File system options #options QUOTA # UFS quotas #options FFS_EI # FFS Endian Independant support options SOFTDEP # FFS soft updates support. #options WAPBL # File system journaling support - Experimental #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental options NFSSERVER # Network File System server #options FFS_NO_SNAPSHOT # No FFS snapshot support #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and # immutable) behave as system flags. # Networking options options GATEWAY # packet forwarding options INET # IP + ICMP + TCP + UDP options INET6 # IPV6 #options IPSEC # IP security #options IPSEC_ESP # IP security (encryption part; define w/IPSEC) #options IPSEC_NAT_T # IPsec NAT traversal (NAT-T) #options IPSEC_DEBUG # debug for IP security #options MROUTING # IP multicast routing #options PIM # Protocol Independent Multicast #options ISO,TPIP # OSI #options EON # OSI tunneling over IP #options NETATALK # AppleTalk networking protocols options PPP_BSDCOMP # BSD-Compress compression support for PPP options PPP_DEFLATE # Deflate compression support for PPP options PPP_FILTER # Active filter support for PPP (requires bpf) options PFIL_HOOKS # pfil(9) packet filter hooks options IPFILTER_LOG # ipmon(8) log support options IPFILTER_LOOKUP # ippool(8) support #options IPFILTER_DEFAULT_BLOCK # block all packets by default #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG #options ALTQ # Manipulate network interfaces' output queues #options ALTQ_BLUE # Stochastic Fair Blue #options ALTQ_CBQ # Class-Based Queueing #options ALTQ_CDNR # Diffserv Traffic Conditioner #options ALTQ_FIFOQ # First-In First-Out Queue #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) #options ALTQ_HFSC # Hierarchical Fair Service Curve #options ALTQ_LOCALQ # Local queueing discipline #options ALTQ_PRIQ # Priority Queueing #options ALTQ_RED # Random Early Detection #options ALTQ_RIO # RED with IN/OUT #options ALTQ_WFQ # Weighted Fair Queueing # These options enable verbose messages for several subsystems. # Warning, these may compile large string tables into the kernel! options SCSIVERBOSE # human readable SCSI error messages # wscons options #options WSEMUL_SUN # sun terminal emulation options WSEMUL_VT100 # VT100 / VT220 emulation options WSDISPLAY_COMPAT_ITEFONT # use ite font (6x10) # rcons options; note that 1-bit and 8-bit displays are supported by default. options RCONS_2BPP # Support for 2-bit display #options RCONS_4BPP # Support for 4-bit display #options RCONS_16BPP # Support for 16-bit display # Mac-specific options #options ALTXBUTTONS # Map Opt-{1,2,3} to mouse buttons #options DISABLE_EXT_CACHE # If really paranoid, disable IIci ext. cache options GRF_COMPAT # Include grf compatibility code #options MRG_ADB # Use ROM-based ADB driver #options ZS_CONSOLE_ABORT options NFS_BOOT_DHCP # Kernel root file system and dump configuration. config netbsd root on ? type ? # # Device configuration # mainbus0 at root # Basic Bus Support # On-board I/O bus support obio0 at mainbus? # NuBus support nubus0 at mainbus? # Console Devices # Apple Desktop Bus interface adb0 at obio? aed* at adb? # ADB event device akbd* at adb? # ADB keyboard ams* at adb? # ADB mouse # Basic frame buffer support intvid0 at obio? # Internal video hardware #macvid* at nubus? # NuBus video card # Device-independent frame buffer interface macfb* at intvid? #macfb* at macvid? # Workstation Console devices wsdisplay* at macfb? console ? wskbd* at akbd? console ? wsmouse* at ams? # Centronics printer port # CSI Hurdler Centronics Parallel Interface #cpi* at nubus? # Serial Devices # On-board serial interface zsc0 at obio? zstty* at zsc? channel ? # SCSI Controllers and Devices # SCSI controllers # XXX - use only one of ncrscsi or sbc #ncrscsi0 at obio? addr 0 # SCSI NCR 5380 #sbc0 at obio? addr 0 flags 0x1 # MI SCSI NCR 5380 esp0 at obio? addr 0 # SCSI NCR 53C9x #esp1 at obio? addr 1 # SCSI NCR 53C9x # SCSI bus support scsibus* at scsi? # SCSI devices sd* at scsibus? target ? lun ? # SCSI disk drives #st* at scsibus? target ? lun ? # SCSI tape drives cd* at scsibus? target ? lun ? # SCSI CD-ROM drives #ch* at scsibus? target ? lun ? # SCSI autochangers #se* at scsibus? target ? lun ? # SCSI ethernet #ss* at scsibus? target ? lun ? # SCSI scanners #uk* at scsibus? target ? lun ? # SCSI unknown # IDE controller and devices #wdc* at obio? flags 0x1000 #atabus* at ata? #wd* at atabus? drive ? # Miscellaneous mass storage devices # IWM floppy disk controller #iwm0 at obio? # Sony driver (800K GCR) #fd* at iwm? drive ? # Network Interfaces # On-board Ethernet controllers #sn* at obio? # SONIC-based (DP83932, DP83916) #mc* at obio? # MACE-based # NuBus Ethernet controllers ae* at nubus? # DP8390-based #sn* at nubus? # SONIC-based (DP83932, DP83916) #sm* at nubus? # SMC 91cxx-based #netdock* at nubus? # Asante NetDock, Newer Ether MicroDock #nsphy* at mii? phy ? #ukphy* at mii? phy ? # Audio Devices # On-board audio hardware asc0 at obio? # ASC/EASC audio # Pseudo-Devices # disk/mass storage pseudo-devices #pseudo-device ccd 4 # concatenated/striped disk devices #pseudo-device cgd 4 # cryptographic disk devices #pseudo-device raid 8 # RAIDframe disk driver #options RAID_AUTOCONFIG # auto-configuration of RAID components # Options to enable various other RAIDframe RAID types. # options RF_INCLUDE_EVENODD=1 # options RF_INCLUDE_RAID5_RS=1 # options RF_INCLUDE_PARITYLOGGING=1 # options RF_INCLUDE_CHAINDECLUSTER=1 # options RF_INCLUDE_INTERDECLUSTER=1 # options RF_INCLUDE_PARITY_DECLUSTERING=1 # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 pseudo-device fss 4 # file system snapshot device pseudo-device md 1 # memory disk device (ramdisk) #pseudo-device vcoda 1 # Venus/Coda distributed file system pseudo-device vnd # disk-like interface to files #options VND_COMPRESSION # compressed vnd(4) # network pseudo-devices pseudo-device bpfilter # Berkeley packet filter #pseudo-device carp # Common Address Redundancy Protocol pseudo-device ipfilter # IP filter (firewall) and NAT pseudo-device loop # network loopback pseudo-device ppp # Point-to-Point Protocol #pseudo-device pppoe # PPP over Ethernet (RFC 2516) pseudo-device sl # Serial Line IP #pseudo-device strip # Starmode Radio IP (Metricom) pseudo-device tun # network tunneling over tty pseudo-device tap # virtual Ethernet #pseudo-device gre # generic L3 over IP tunnel pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) #pseudo-device faith # IPv[46] tcp relay translation i/f pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation pseudo-device vlan # IEEE 802.1q encapsulation pseudo-device bridge # simple inter-network bridging #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too pseudo-device agr # IEEE 802.3ad link aggregation # # accept filters pseudo-device accf_data # "dataready" accept filter pseudo-device accf_http # "httpready" accept filter # miscellaneous pseudo-devices pseudo-device grf 2 # grf emulation for wscons pseudo-device ite 1 # ite emulation for wscons pseudo-device pty # pseudo-terminals pseudo-device clockctl # user control of clock subsystem # random number generator pseudo-device pseudo-device rnd # /dev/random and in-kernel generator #options RND_COM # use "com" randomness as well (BROKEN) pseudo-device ksyms # /dev/ksyms #pseudo-device pf # PF packet filter #pseudo-device pflog # PF log if # Veriexec # # a pseudo device needed for veriexec #pseudo-device veriexec 1 # # Uncomment the fingerprint methods below that are desired. Note that # removing fingerprint methods will have almost no impact on the kernel # code size. # #options VERIFIED_EXEC_FP_RMD160 #options VERIFIED_EXEC_FP_SHA256 #options VERIFIED_EXEC_FP_SHA384 #options VERIFIED_EXEC_FP_SHA512 #options VERIFIED_EXEC_FP_SHA1 #options VERIFIED_EXEC_FP_MD5

makeoptionsO2 が時間のかかる要因だと思われます…

nmi0066h at 23:43│Comments(5)TrackBack(0) 日々のできごと 

トラックバックURL

この記事へのコメント

1. Posted by 陥没乳首な巨乳おっぱい動画   2011年10月02日 23:52
1 eaZFuQ0r, boin.ex-navi.biz, 陥没乳首な巨乳おっぱい動画, http://boin.ex-navi.biz/oppai/144.html
2. Posted by ぉぉぃι   2011年10月03日 00:34
Domain Name: EX-NAVI.BIZ
Domain ID: D35505136-BIZ
Sponsoring Registrar: KEY-SYSTEMS GMBH
Sponsoring Registrar IANA ID: 269
Registrar URL (registration services): www.key-systems.net
Domain Status: ok
Registrant ID: P-7861265
Registrant Name: Akina Suzuki
Registrant Organization: Personal
Registrant Address1: Dogenzaka 2-17-7
Registrant City: Shibuya-ku
Registrant State/Province: Tokyo-to
Registrant Postal Code: 150-0043
Registrant Country: Japan
Registrant Country Code: JP
Registrant Phone Number: +81.334611431
Registrant Email: eightninehalf8392@yahoo.co.jp

住所の「渋谷区道玄坂2-17-7」は存在しなかった。

まー、そもそも、こんなサイトが本当の住所を載せるわけないよね。
さくらインターネットは、犯罪に加担してると言われてもしかたねーなw
3. Posted by モンブランボールペン   2014年01月21日 22:04
筆記具を機能的に優れた筆記具に仕上げるだけではなく、一本一本に『魂』を吹き込みます。
モンブランボールペン http://www.whatisyourtee.com/
4. Posted by 表示   2014年06月28日 16:00
3 珠理奈って三白眼だけど、入れていないって言われていたのに_| ̄|○
アメリカ・ロシア・中国・インドは宇宙よりも小さいという事実を再認識することで自尊心を保持することが目的であり宇宙の96%が空想であるという現状についての疑問点は アメリカ  ヘイ、パピー。 ミーもTOMODACHI。 
アメリカ・ロシアの2強。中国・インドの復活。
5. Posted by Dnndemo.Surat.com.tr   2014年08月06日 05:05
1 Thanks for finally writing about >潰れた記念Blog:
NetBSD/mac68kでカーネルのセルフコンパイル <Loved it!

コメントする

名前
 
  絵文字
 
 
NetBSD/mac68kが自動ブートするようにするNetBSD/mac68kでカーネルのクロスコンパイル