Date: Sat, 13 Mar 2021 13:57:12 -0800 From: Mark Millard <marklmi@yahoo.com> To: Don Lewis <truckman@FreeBSD.org> Cc: freebsd-hackers <freebsd-hackers@freebsd.org> Subject: Re: problems building a release Message-ID: <45D8156C-8DEF-48DD-A091-09D54E84F6B4@yahoo.com> In-Reply-To: <EF95616D-B070-424E-96C8-B00E96F392B5@yahoo.com> References: <tkrat.1c0426e45b0db829@FreeBSD.org> <B1EB0872-3BC4-424A-AC83-1D5184B9DA15@yahoo.com> <tkrat.1fc12827aa92db3e@FreeBSD.org> <8CE18E0A-8931-4C41-83B4-D30EEC049E6D@yahoo.com> <tkrat.4f378e8f76c23887@FreeBSD.org> <EF95616D-B070-424E-96C8-B00E96F392B5@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2021-Mar-13, at 13:41, Mark Millard <marklmi at yahoo.com> wrote: >> On 2021-Mar-13, at 12:43, Don Lewis <truckman at FreeBSD.org> wrote: >>=20 >> On 13 Mar, Mark Millard wrote: >>> . . . >>=20 >> Thanks. All of this stuff is pretty confusing. >>=20 >> If I specify MAKE_CONF in release.conf, it does affect the target = build. >> In particular MODULES_OVERRIDE does the right thing. >>=20 >> It seems like there should be a way to specify a make.conf and = src.conf >> so that they get included in the release so that if the release is >> installed and then world and kernel are built it reproduces itself. >>=20 >> I did manage to unmute release.sh and make so that the build is = verbose, >> but the error I get when I specify TARGET and TARGET_ARCH in the >> make.conf is still a mystery. There doesn't seem to be a line = buffering >> problem hiding things, this was captured from the terminal window = with >> no redirections involved. >>=20 >> =3D=3D=3D> etc (installconfig) >> mkdir -p bootonly/usr/freebsd-dist >> cp MANIFEST bootonly/usr/freebsd-dist >> ln -fs /tmp/bsdinstall_etc/resolv.conf bootonly/etc/resolv.conf >> echo sendmail_enable=3D\"NONE\" > bootonly/etc/rc.conf >> echo hostid_enable=3D\"NO\" >> bootonly/etc/rc.conf >> echo debug.witness.trace=3D0 >> bootonly/etc/sysctl.conf >> echo vfs.mountroot.timeout=3D\"10\" >> bootonly/boot/loader.conf >> echo kernels_autodetect=3D\"NO\" >> bootonly/boot/loader.conf >> cp /usr/src/release/rc.local bootonly/etc >> sh /usr/src/release/i386/mkisoimages.sh -b 14_0_CURRENT_i386_BO = bootonly.iso bootonly=20 >> sh /usr/src/release/i386/make-memstick.sh disc1 memstick.img >> Calculated size of `memstick.img.part': 624754688 bytes, 13074 inodes >> Extent size set to 32768 >> memstick.img.part: 595.8MB (1220224 sectors) block size 32768, = fragment size 4096 >> using 1 cylinder groups of 595.81MB, 19066 blks, 13952 inodes. >> super-block backups (for fsck -b #) at: >> 192, >> Populating `memstick.img.part' >> Image `memstick.img.part' complete >> sh /usr/src/release/i386/make-memstick.sh bootonly mini-memstick.img >> Calculated size of `mini-memstick.img.part': 237436928 bytes, 13069 = inodes >> Extent size set to 32768 >> mini-memstick.img.part: 226.4MB (463744 sectors) block size 32768, = fragment size 4096 >> using 1 cylinder groups of 226.44MB, 7246 blks, 14592 inodes. >> super-block backups (for fsck -b #) at: >> 192, >> Populating `mini-memstick.img.part' >> Image `mini-memstick.img.part' complete >=20 > The below notes are about what starts here: >=20 >> make -C /usr/src/release release-done >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> touch release >> true >=20 > That is interesting as this turns out to be a fairly > simple context by the time that "make . . . release-done" > is echoed: >=20 > QUOTE > release: real-release vm-release cloudware-release > ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} release-done > true >=20 > release-done: > touch release > END QUOTE >=20 > but by then "real-release vm-release cloudware-release" > completed and we see the touch and true after the messages. >=20 > So it looks like the 6 "not found" messages are from > make's internal activities. >=20 > It would be interesting to get a truss -f log (or some such) > of that "${MAKE} . . . release-done" out into to a file. > There should not be much other activity in the file generated. > That might expose the activity producing the "not found" > messages. >=20 > Also interesting might be adding a "file /libexec/ld-elf.so.1" > command line to release: or adding other such context reporting > there, such as "uname -apKU" . >=20 >> + eval chroot /scratch make -C /usr/src/release 'TARGET=3Di386' = 'TARGET_ARCH=3Di386' 'KERNCONF=3D"GW"' = '__MAKE_CONF=3D/home/dl/gw-release/make.conf' = 'SRCCONF=3D/home/dl/gw-release/src.conf' 'NOPORTS=3Dyes' 'WITH_DVD=3D' = 'WITH_VMIMAGES=3D' 'WITH_CLOUDWARE=3D' 'XZ_THREADS=3D0' install = 'DESTDIR=3D/R' 'WITH_COMPRESSED_IMAGES=3D' 'WITH_COMPRESSED_VMIMAGES=3D' >> + chroot /scratch make -C /usr/src/release 'TARGET=3Di386' = 'TARGET_ARCH=3Di386' 'KERNCONF=3DGW' = '__MAKE_CONF=3D/home/dl/gw-release/make.conf' = 'SRCCONF=3D/home/dl/gw-release/src.conf' 'NOPORTS=3Dyes' 'WITH_DVD=3D' = 'WITH_VMIMAGES=3D' 'WITH_CLOUDWARE=3D' 'XZ_THREADS=3D0' install = 'DESTDIR=3D/R' 'WITH_COMPRESSED_IMAGES=3D' 'WITH_COMPRESSED_VMIMAGES=3D' >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >> ELF interpreter /libexec/ld-elf.so.1 not found, error 8 >> Abort trap >=20 > QUOTE > install: release-install vm-install > END QUOTE >=20 > where the release-install: commands are listed > later below (so after the "not found" messages). >=20 > Again: seems to be make-internal activities that > generate the 6 messages. >=20 >> mkdir -p /R >> cp -a ftp /R/ >> cp -p disc1.iso /R/FreeBSD-14.0-CURRENT-i386-disc1.iso >> cp -p bootonly.iso /R/FreeBSD-14.0-CURRENT-i386-bootonly.iso >> cp -p memstick.img /R/FreeBSD-14.0-CURRENT-i386-memstick.img >> cp -p mini-memstick.img = /R/FreeBSD-14.0-CURRENT-i386-mini-memstick.img >> cd /R && sha512 FreeBSD-14.0-CURRENT-i386* > /R/CHECKSUM.SHA512 >> cd /R && sha256 FreeBSD-14.0-CURRENT-i386* > /R/CHECKSUM.SHA256 >> + return 0 >> + return 0 >> + umount /scratch/dev >=20 >=20 If I gather correctly, one can force the: ELF interpreter /libexec/ld-elf.so.1 not found, error 8 Abort trap messages to show up on a previously working amd64 system that has lib32 support by removing /libexec/ld-elf32.so.1 and then trying to run i386 code. (The message generation does not track the indirection to /libexec/ld-elf32.so.1 and so references a misleading path.) This might suggest that /libexec/ld-elf32.so.1 is missing or corrupt in the context those 2 makes are executing in. (Hopefully no WITHOUT_LIB32=3D usage is explicitly involved.) =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45D8156C-8DEF-48DD-A091-09D54E84F6B4>