NanoBSD cust_pkgng problem....
Ian Lepore
ian at freebsd.org
Thu Jun 20 19:40:16 UTC 2019
On Thu, 2019-06-20 at 13:16 -0500, Karl Denninger wrote:
> I'm trying to rebuild 12-STABLE with current code with the following
> for
> the PCEngines systems.
>
> NANO_NAME=pcengines
> NANO_SRC=/usr/src
> NANO_KERNEL=KSD-SMP
> NANO_IMAGES=2
> NANO_MODULES="default"
>
> #NANO_DRIVE=ad0
> NANO_DRIVE=mmcsd0
>
> NANO_RAM_ETCSIZE=30720
> #NANO_RAM_TMPVARSIZE=30720
> NANO_RAM_TMPVARSIZE=131072
>
> NANO_PACKAGE_DIR=/work/PKG-AMD64-12/pkg
>
> # Configuration slice size set to 64Mb
> #
> NANO_CONFSIZE=$((64*1000*1000/512))
> #
> # Set "data" partition to 512MB
> #
> NANO_DATASIZE=$((512*1000*1000/512))
>
> NANO_OBJ="/work/Crochet-work-AMD/obj"
>
> NANO_PMAKE="make -j 8"
>
> # 7.5Gb SD image; will fit on a 8Gb card, but is REAL tight!
> #NANO_MEDIASIZE=$((7*1000*1000*1000/512 + 1000*1000*512/512))
> #
> # 12Gb SD image; fits on 16Gb SD card and has more room for packages
> NANO_MEDIASIZE=$((12*1000*1000*1000/512))
>
> The packages are in /work/PKG-AMD64-12 as expected. I have a little
> script that gets them which is:
>
> PKGDIR='/work/PKG-AMD64-12'
> export PKGDIR
> PKG_CACHEDIR=/work/PKG-AMD64-12/cache
> export PKG_CACHEDIR
>
> ABI=FreeBSD:12:amd64
> export ABI
>
> pkg -R . -r . -o $PKGDIR/pkgs fetch -d \
> bind914 rsync sshguard strongswan dhcp6 \
> net-snmp ntimed openvpn flashrom dmidecode
> # net-snmp ntimed openvpn flashrom dmidecode ssmtp
> # bind914 rsync sshguard strongswan dhcp6 isc-dhcp44-server \
>
> rm -rf $PKGDIR/pkg
> mkdir -p $PKGDIR/pkg
>
> cd $PKG_CACHEDIR
> find . -type l -print -exec cp {} ../pkg \;
>
> /work/PKG-AMD64-12 has a repo.conf file and such; I use the same
> mechanism to fetch for Crochet for the ARM64 platforms.
>
> Note the two commented lines. If I include EITHER ssmpt or
> isc-dhcp44-server cust_pkgng fails, but the error simply says the
> install failed without a reason for it.
>
> If I do NOT include those two the build succeeds. Neither of them,
> if I
> add them back in, discloses a missing dependency or similar.
>
> pkg: Cannot open /dev/null:No such file or directory
> Extracting flashrom-1.0_1: ........ done
> Message from python27-2.7.16_1:
>
> =====================================================================
> ======
>
> Note that some standard Python modules are provided as separate ports
> as they require additional dependencies. They are available as:
>
> bsddb databases/py-bsddb
> gdbm databases/py-gdbm
> sqlite3 databases/py-sqlite3
> tkinter x11-toolkits/py-tkinter
>
> =====================================================================
> ======
> + CR 'env BATCH=YES ASSUME_ALWAYS_YES=YES PKG_DBDIR=/var/db/pkg
> SIGNATURE_TYPE=none /usr/sbin/pkg add /_.p/gettext-runtime-
> 0.20.1.txz'
> + chroot /work/Crochet-work-AMD/obj/_.w /bin/sh -exc 'env BATCH=YES
> ASSUME_ALWAYS_YES=YES PKG_DBDIR=/var/db/pkg SIGNATURE_TYPE=none
> /usr/sbin/pkg add /_.p/gettext-runtime-0.20.1.txz'
> + env 'BATCH=YES' 'ASSUME_ALWAYS_YES=YES' 'PKG_DBDIR=/var/db/pkg'
> 'SIGNATURE_TYPE=none' /usr/sbin/pkg add /_.p/gettext-runtime-
> 0.20.1.txz
> Installing gettext-runtime-0.20.1...
> the most recent version of gettext-runtime-0.20.1 is already
> installed
> + CR 'env BATCH=YES ASSUME_ALWAYS_YES=YES PKG_DBDIR=/var/db/pkg
> SIGNATURE_TYPE=none /usr/sbin/pkg add /_.p/icu-64.2,1.txz'
> + chroot /work/Crochet-work-AMD/obj/_.w /bin/sh -exc 'env BATCH=YES
> ASSUME_ALWAYS_YES=YES PKG_DBDIR=/var/db/pkg SIGNATURE_TYPE=none
> /usr/sbin/pkg add /_.p/icu-64.2,1.txz'
> + env 'BATCH=YES' 'ASSUME_ALWAYS_YES=YES' 'PKG_DBDIR=/var/db/pkg'
> 'SIGNATURE_TYPE=none' /usr/sbin/pkg add /_.p/icu-64.2,1.txz
> Installing icu-64.2,1...
> the most recent version of icu-64.2,1 is already installed
> + CR 'env BATCH=YES ASSUME_ALWAYS_YES=YES PKG_DBDIR=/var/db/pkg
> SIGNATURE_TYPE=none /usr/sbin/pkg add /_.p/indexinfo-0.3.1.txz'
> + chroot /work/Crochet-work-AMD/obj/_.w /bin/sh -exc 'env BATCH=YES
> ASSUME_ALWAYS_YES=YES PKG_DBDIR=/var/db/pkg SIGNATURE_TYPE=none
> /usr/sbin/pkg add /_.p/indexinfo-0.3.1.txz'
> + env 'BATCH=YES' 'ASSUME_ALWAYS_YES=YES' 'PKG_DBDIR=/var/db/pkg'
> 'SIGNATURE_TYPE=none' /usr/sbin/pkg add /_.p/indexinfo-0.3.1.txz
> Installing indexinfo-0.3.1...
> the most recent version of indexinfo-0.3.1 is already installed
> + CR 'env BATCH=YES ASSUME_ALWAYS_YES=YES PKG_DBDIR=/var/db/pkg
> SIGNATURE_TYPE=none /usr/sbin/pkg add /_.p/isc-dhcp44-server-
> 4.4.1_4.txz'
> + chroot /work/Crochet-work-AMD/obj/_.w /bin/sh -exc 'env BATCH=YES
> ASSUME_ALWAYS_YES=YES PKG_DBDIR=/var/db/pkg SIGNATURE_TYPE=none
> /usr/sbin/pkg add /_.p/isc-dhcp44-server-4.4.1_4.txz'
> + env 'BATCH=YES' 'ASSUME_ALWAYS_YES=YES' 'PKG_DBDIR=/var/db/pkg'
> 'SIGNATURE_TYPE=none' /usr/sbin/pkg add /_.p/isc-dhcp44-server-
> 4.4.1_4.txz
> Installing isc-dhcp44-server-4.4.1_4...
> pkg: Cannot open /dev/null:No such file or directory
>
> Failed to install the following 1 package(s):
> /_.p/isc-dhcp44-server-4.4.1_4.txz
> + umount /work/Crochet-work-AMD/obj/_.w/_.p
> + rm -rf /work/Crochet-work-AMD/obj/_.w/_.p
> + echo 'NANO RM -rf /work/Crochet-work-AMD/obj/_.w/_.p'
> NANO RM -rf /work/Crochet-work-AMD/obj/_.w/_.p
> + uname -r
> + command rm -x -rf /work/Crochet-work-AMD/obj/_.w/_.p
>
> Note that's not the "can't open /dev/null" complaint since that
> appears
> up above (and in fact a bunch of other times previously as well) and
> doesn't blow the install up. But *something* is causing the install
> for
> those two packages -- and only these two, as the other ~40 odd with
> dependencies are fine -- to exit non-zero and blow up the build.
>
> It's tough to run this down without an error message that tells me
> exactly what it's upset about.
>
> Any ideas?
>
I think it's a mistake to ignore the /dev/null errors. It's quite
possible that the error is non-fatal when installing some packages and
fatal when installing others. The message indicates you need to mount
devfs within the chroot or jail being used to run pkg.
-- Ian
More information about the freebsd-embedded
mailing list