Date: Tue, 28 Jan 2020 09:18:33 -0700 From: Ian Lepore <ian@freebsd.org> To: Nick Hibma <nick@van-laarhoven.org>, Warner Losh <imp@bsdimp.com> Cc: FreeBSD Current Mailing List <freebsd-current@freebsd.org> Subject: Re: btxld not found Message-ID: <bbeeb3ea26759bee7b087d04931d7e03fd368338.camel@freebsd.org> In-Reply-To: <5A341389-36CE-49F0-AACD-374CEEF412E0@van-laarhoven.org> References: <8B42F93A-7B9E-4F99-9D77-43DA3BB7F045@van-laarhoven.org> <DD6AD7D9-AA90-4D57-8A4A-A768239B688B@me.com> <E628D8B1-04C7-4C97-A2B8-DF0B7EC661C6@van-laarhoven.org> <CANCZdfqzMZv_RBpSKg03mkZRFYiGOQeN79z7SmL%2B-BvP4qZWXQ@mail.gmail.com> <5A341389-36CE-49F0-AACD-374CEEF412E0@van-laarhoven.org>
index | next in thread | previous in thread | raw e-mail
On Tue, 2020-01-28 at 17:08 +0100, Nick Hibma wrote:
> > On Tue, Jan 28, 2020, 4:57 AM Nick Hibma <nick@van-laarhoven.org
> > <mailto:nick@van-laarhoven.org>> wrote:
> > > On 28/01 /2020, at 12:39, Toomas Soome <tsoome@me.com <mailto:
> > > tsoome@me.com>> wrote:
> > >
> > > > On 28. Jan 2020, at 13:36, Nick Hibma <nick@van-laarhoven.org
> > > > <mailto:nick@van-laarhoven.org>> wrote:
> > > >
> > > > Folks,
> > > >
> > > > Could anyone explain to me what I am doing wrong? make
> > > > installworld fails each time with the following error
> > > >
> > > > ===> stand/i386/libi386 (install)
> > > > ===> stand/i386/loader_4th (install)
> > > > strip -R .comment -R .note -o loader_4th.bin loader_4th.sym
> > > > btxld -v -f aout -e 0x200000 -o loader_4th -l
> > > > /usr/obj/usr/src/i386.i386/stand/i386/btx/btxldr/btxldr -b
> > > > /usr/obj/usr/src/i386.i386/stand/i386/btx/btx/btx
> > > > loader_4th.bin
> > > > make[6]: exec(btxld) failed (No such file or directory)
> > > > *** Error code 1
> > > >
> > > > This is with source of last week. I had this problem before
> > > > (from old sources) and fixed it by specifying the full path to
> > > > btxld in the stand/i386/*/Makefile.
> > > >
> > > > Any pointers?
> > > >
> > >
> > > it should be /usr/sbin/btxld; are you missing /usr/sbin from the
> > > path?
> >
> > Well, it's an 'installworld' so I would expect it to be providing
> > that program itself, but no, /usr/sbin/ is in the path of the
> > current shell.
> >
> > Also, in some of the makefiles the target calling btxldr is
> > depending on the build of that executable:
> >
> > Index: stand/i386/pxeldr/Makefile
> > ===================================================================
> > --- stand/i386/pxeldr/Makefile (revision 357042)
> > +++ stand/i386/pxeldr/Makefile (working copy)
> > @@ -39,7 +39,7 @@
> > CLEANFILES+= ${LOADER}
> >
> > ${LOADER}: ${LOADERBIN} ${BTXLDR} ${BTXKERN}
> > - btxld -v -f aout -e ${LOADER_ADDRESS} -o ${.TARGET} -l
> > ${BTXLDR} \
> > + /usr/sbin/btxld -v -f aout -e ${LOADER_ADDRESS} -o
> > ${.TARGET} -l ${BTXLDR} \
> > -b ${BTXKERN} ${LOADERBIN}
> >
> > This is definitely wrong. We have either a path that is wrong, or
> > we aren't reinstalling btxld in the right place.
> >
> > Warner
>
> This is not a fix, this is to get me through the installworld. As
> I've not seen any mention of this the past 6 months it must be
> something on my system that makes things go bad, but I have no idea
> what.
>
> They are being built, and installed:
>
> {e}nick@fimkjecurrent:/usr/src/stand/i386/btx % find / -name btxld
> -ls
> 1908308 48 -r-xr-xr-x 1
> root wheel
> 22988 Jan 27 23:37 /usr/sbin/btxld
> 1319010 4 drwxr-xr-x 2
> nick nick
> 512 Sep 15 2017 /usr/src/usr.sbin/btxld
> 3369564 4 drwxrwxr-x 2
> root wheel
> 512 Jan 27 22:33 /usr/obj/usr/src/i386.i386/usr.sbin/btxld
> 3371323 52 -rwxr-xr-x 1
> root wheel
> 25816 Jan 27 22:33 /usr/obj/usr/src/i386.i386/usr.sbin/btxld/btxld
>
> I guess the difference in file size is due to it being stripped
> during install?
>
> Nick
I would expect the one that gets used during make install to be in the
objdir/.../tmp/usr/sbin directory, like other build and install tools.
But oddly, I don't have btxld in tmp for amd64 builds, only for i386.
-- Ian
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bbeeb3ea26759bee7b087d04931d7e03fd368338.camel>
