On 1/8/19 8:39 PM, Ed Maste wrote: > On Tue, 8 Jan 2019 at 20:54, Rob Landley <[email protected]> wrote: >> >> make allnoconfig KCONFIG_ALLCONFIG=mini.config > > Yep, that seems to work (a few cosmetic build issues): > > % gmake allnoconfig KCONFIG_ALLCONFIG=mini.config > % gmake > scripts/make.sh > scripts/make.sh: line 18: nproc: command not found
Yeah, make.sh does: [ -z "$CPUS" ] && CPUS=$(($(nproc)+1)) If nproc isn't found it becomes $((+1)) which is 1. That said, possibly it should be nproc 2>/dev/null inside the $( ) . (Being unable to detect SMP in the BSD build isn't fatal...) > Generate headers from toys/*/*.c... > Make generated/config.h from .config. > generated/flags.h Hmmm, possibly that should just be more "." output when we don't export V=1. > Compiletoybox.................................................................................................................... > strip: open toybox failed: Permission denied The toybox binary is chmod -r because "cp file symlink" can overwrite what the symlink points to, and overwriting the toybox binary kills _all_ the toybox commands (with all the other symlinks that now point to, last time a build's install failed that way for me, "bzip2"). That said I'm not sure why it failed here? I'm guessing your "strip -o" isn't deleting the target file, but overwriting it in place? (Which is bad, and setting the permissions like that catches that?) > strip failed, using unstripped > . > volta% ./toybox > acpi ascii base64 basename bunzip2 bzcat cal cat catv chgrp chmod > chown chroot chrt chvt cksum clear cmp comm count cpio crc32 cut date > dirname dos2unix du echo egrep expand factor fallocate false fgrep > file find flock fmt fsync grep groups head help hexedit hostname iconv > id kill killall killall5 link ln logger logname ls lsmod lspci lsusb > makedevs mkdir mkfifo mknod mkpasswd mkswap mktemp modinfo mountpoint > nice nl nohup od paste patch pidof pmap printenv printf pwd pwdx readlink > realpath renice reset rev rm rmdir sed seq setsid shred sleep sort > split strings sync sysctl tac tee test time timeout touch true truncate > tty uname uniq unix2dos unlink usleep uudecode uuencode uuidgen vmstat > w watch wc which who whoami xargs xxd yes > > We don't have an nproc command; sysctl -n hw.ncpu will return the # of > CPUs on FreeBSD. Which is not the same as the _active_ CPUS: taskset 1 nproc > I'm not sure how to plumb that into scripts/make.sh > in a nice way. It ends up as CPUS=1 though and thus works fine. Intentional! :) > And the strip failure is due to the existing toybox (from previous build) > being installed r-x. Also intentional, explained above. > Anyhow, mini.config looks good. Cool. Thanks. Rob _______________________________________________ Toybox mailing list [email protected] http://lists.landley.net/listinfo.cgi/toybox-landley.net
