ほぼ雑記的メモ
新しいPCにFreeBSDを環境を構築しているのですが、acroread8が以下のようなメッセージを吐いて動かないという・・・
Freebsd linux NIS getpwuid_r(): failed due to unknown user id XXXX
LinuxエミュがNIS引いてないのが原因。
/compat/linux/etc/nsswitch.conf
をNISを見るように修正で対処。古いPCではちゃんと対処してたんですがね・・・ すっかりそういう対処をしたというのを忘れていたようで。 あるいは妖精さんが対処してくれてたのかなぁ?
/usr/obj/arm.armv6/PATH/tmp/usr/bin (PATHはコンパイルしたソースのパスが入るので適宜修正)
MRuby::CrossBuild.new('armv6') do |conf| toolchain :gcc conf.cc do |cc| cc.command = "/usr/obj/arm.armv6/PATH/tmp/usr/bin/cc" end conf.linker do |linker| linker.command = "/usr/obj/arm.armv6/PATH/tmp/usr/bin/cc" end conf.archiver do |archiver| archiver.command = "/usr/obj/arm.armv6/PATH/tmp/usr/bin/gnu-ar" end end
setenv TARGET arm setenv TARGET_ARCH armv6
export TARGET=arm export TARGET_ARCH=armv6
make MALLOC_PRODUCTION=yes buildworld make WITH_FDT=yes KERNCONF=RPI-B buildkernel
MAKEOBJDIRPREFIX
# mount /dev/da2s2a /mnt
make DESTDIR=/mnt KERNCONF=RPI-B-issei installkernel make DESTDIR=/mnt installworld
auditdistd:*:78:77::0:0:Auditdistd unprivileged user:/var/empty:/usr/sbin/nologin
make DESTDIR=/mnt distribution
# make buildkernel KERNCONF=RPI-B-hoge WITH_FDT=yes # make installkernel KERNCONF=RPI-B-hoge
root@raspberry-pi:~ # dmesg Copyright (c) 1992-2012 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 10.0-CURRENT #1 r243778: Sat Dec 1 12:29:02 PST 2012 root@bsdbox:/src/FreeBSD/obj/arm.armv6/src/FreeBSD/head/sys/RPI-B arm CPU: Sheeva 88SV581x rev 7 (Marvell core) Supported features: ARM_ISA THUMB2 JAZELLE ARMv4 Security_Ext WB enabled LABT branch prediction enabled 16KB/32B 4-way instruction cache 16KB/32B 4-way write-back-locking-C data cache real memory = 536870912 (512 MB) avail memory = 386371584 (368 MB) kbd0 at kbdmux0 simplebus0: mem 0xf2000000-0xf2ffffff on fdtbus0 intc0: mem 0xf200b200-0xf200b3ff on simplebus0 systimer0: mem 0xf2003000-0xf2003fff irq 8,9,10,11 on simplebus0 Event timer "BCM2835 Event Timer 3" frequency 1000000 Hz quality 1000 Timecounter "BCM2835 Timecounter" frequency 1000000 Hz quality 1000 sdhci_bcm0: mem 0xf2300000-0xf23000ff irq 70 on simplebus0 bcmwd0: mem 0xf210001c-0xf2100027 on simplebus0 gpio0: mem 0xf2200000-0xf22000af irq 57,59,58,60 on simplebus0 gpio0: read-only pins: 46,47,48,49,50,51,52,53. gpio0: reserved pins: 48,49,50,51,52,53. gpioc0: on gpio0 gpiobus0: on gpio0 uart0: mem 0xf2201000-0xf2201fff irq 65 on simplebus0 dwcotg0: mem 0xf2980000-0xf299ffff irq 17 on simplebus0 usbus0 on dwcotg0 fb0: on fdtbus0 sc0: Unknown <16 virtual consoles, flags=0x300> Timecounters tick every 10.000 msec usbus0: 480Mbps High Speed USB v2.0 ugen0.1: at usbus0 uhub0: on usbus0 uhub0: 1 port with 1 removable, self powered mmcsd0: 14GB at mmc0 25.0MHz/4bit/65535-block fb0: 1280x1024(0x0@0,0) 16bpp fb0: pitch 2560, base 0x59385000, screen_size 2621440 Root mount waiting for: usbus0 ugen0.2: at usbus0 uhub1: on usbus0 uhub1: MTT enabled Root mount waiting for: usbus0 uhub1: 3 ports with 2 removable, self powered Root mount waiting for: usbus0 ugen0.3: at usbus0 smsc0: on usbus0 Trying to mount root from ufs:/dev/mmcsd0s2a [rw,noatime]... smsc0: chip 0xec00, rev. 0002 warning: no time-of-day clock registered, system time will not be set accurately miibus0: on smsc0 ukphy0: PHY 1 on miibus0 ukphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ue0: on smsc0 ue0: Ethernet address: b8:27:eb:8b:37:6a smsc0: chip 0xec00, rev. 0002
# dd if=/dev/zero of=/dev/da0 bs=1m count=1 # gpart create -s gpt da0 # gpart add -s 64K -t freebsd-boot da0 # gpart add -t freebsd-ufs -l freebsd da0 # gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 da0 # newfs /dev/da0p2 # mount /dev/da0p2 /mnt # cd /mnt # tar xvfzp /usr/freebsd-dist/base.txz # tar xvfzp /usr/freebsd-dist/kernel.txz # echo '/dev/da0p2 / ufs rw,noatime 0 0' > /mnt/etc/fstab