On 03/31/2016 11:57 AM, Ed Maste wrote: > On 31 March 2016 at 03:07, Zack Breckenridge <[email protected]> wrote: >>> How do I set up a freebsd test build environment, preferably under a VM? >> >> The FreeBSD project now distributes VM images for installation/testing. For >> example you can find some development branch snapshots here (for stable >> branches just go up a few levels and find 10.x): >> >> http://ftp.freebsd.org/pub/FreeBSD/snapshots/VM-IMAGES/11.0-CURRENT/amd64/20160308/ >> >> Notice there's a qcow2 image there for easy testing with KVM. You might even >> be able to run a live environment and use pkgng ("pkg" command) to grab >> gcc/clang etc. and then use "fetch" to pull down toybox. > > The brief instructions I put together for developers of another > project to test on FreeBSD, on one of the snapshot VMs: > > 1. Log in as root on the console > 2. Run "ifconfig -l" to list network interfaces The virtual nic will > likely be em0 or vtnet0 depending on the VM software. > 3. Add to /etc/rc.conf (assuming vtnet0 interface here): > > ifconfig_vtnet0="DHCP" > sshd_enable="YES"
Editing this file did not cause the interface to magically configure itself, but "dhclient em0" worked. > 4. Run pkg and answer Y to install the package management tool Hmmm, phone tether's on a data budget and I dunno how much that'll download, so "shutdown -h now" for now... Yay, "lock order reversal" right after "All buffers synced." in vfs_mount.c;1222 and vfs_subr.c:2498, stack trace: witness_debugger, witness_checkorder, __lockmgr_args, vop_stdlock, VOP_LOCK1_APV, _vn_lock, vget, devfs_allocv, devfs_root, dounmount, vfs_unmountall, bufshutdown, kern_reboot, sys_reboot. > 5. Run pkg install git gcc gmake You mentioned I could skip gcc, so I just did "pkg install git gmake". It's downloading perl, python, curl, cvsps, expat, libffi, cvsps, readline, gettext-runtime... This is _sad_. > 6. Run adduser to create a user account > 7. Run shutdown -r now to reboot > 8. ssh to the VM as your user account I just logged out and logged back in as my new user, git cloned toybox, ran gmake allnoconfig, and it died with scripts/genconfig.sh command not found, which i'm guessing means no bash. There's no sudo, but "su -" works, to switch to root and install bash... Bash requires fdescfs mounted on /dev/fd. What? Ok...? Mounting, adjusting fstab... There's still no /bin/bash? It's in /usr/local/bin. Sigh. Ok, as root "ln -s /usr/local/bin/bash /bin/bash" Hey, gmake allnoconfig finished! Woo! Trying the actual build... Died telling me to PLEASE submit a bug report to freebsd.org. Well that's nice. Lemme see if whatever shell this is understands the 2>&1 | tee syntax to capture the log... Ah, your sed is horked. Right, lemme see what I can do about that... Possibly I can take it from here? > I included gcc in the pkg command above but you can leave it out and > just use the Clang in the base system. The brief experimentation I've > done with toybox is on FreeBSD 10, with Clang 3.4.1. If you use a > FreeBSD 11 snapshot from the link above you'll have Clang 3.8. People are building it with clang so I know it basically works, and my own clang test environment would be nice. Thanks, Rob _______________________________________________ Toybox mailing list [email protected] http://lists.landley.net/listinfo.cgi/toybox-landley.net
