Date: Mon, 25 Apr 2022 13:54:16 -0600 From: Warner Losh <imp@bsdimp.com> To: "Patrick M. Hausen" <pmh@hausen.com> Cc: Brooks Davis <brooks@freebsd.org>, "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: Re: Cross-compile worked, cross-install not so much ... Message-ID: <CANCZdfp2_ZxdUPbcW%2BtLxiuGvEnp65o8te%2BkfTU2-4o7HgZOnA@mail.gmail.com> In-Reply-To: <7FA0C88D-4446-47DD-BBC0-3300B26D6A27@hausen.com> References: <3D48BE93-7D42-4AB2-82D4-88BBF4E1FD40@hausen.com> <20220425191823.GA89506@spindle.one-eyed-alien.net> <7FA0C88D-4446-47DD-BBC0-3300B26D6A27@hausen.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--00000000000098c21e05dd7ff114 Content-Type: text/plain; charset="UTF-8" On Mon, Apr 25, 2022 at 1:26 PM Patrick M. Hausen <pmh@hausen.com> wrote: > Hi, > > > Am 25.04.2022 um 21:18 schrieb Brooks Davis <brooks@freebsd.org>: > > Cross install is not supported. As you have seen, certain tools are > > bootstrapped on the build host and used during the install process. You > > might be able to get away with nuking > > /usr/obj/usr/src/arm64.aarch64/tmp/legacy (or maybe tmp) and then > > running `make toolchain` to build native versions of those tools. > > that comes as a big surprise and disappointment. What is the point of > cross-compiling, then? > How to update a small slow embedded platform? > Cross installing is supported. Native installing of a cross build world isn't. When I've had to do this in the past, I've just mounted the embedded system on my beefy server under /mumble (allowing root on the embedded system for NFS) and did a sudo make installworld ... DESTDIR=/mumble. Though I've forgotten the gymnastics to do etcupdate/mergemaster this way. Warner > I tried your suggestion - unfortunately no worky: > > cd /usr/src/tools/build; make DIRPRFX=tools/build/ > DESTDIR=/usr/obj/usr/src/arm64.aarch64/tmp/legacy host-symlinks > Linking host tools into /usr/obj/usr/src/arm64.aarch64/tmp/legacy/bin > cp: chflags: /usr/obj/usr/src/arm64.aarch64/tmp/legacy/bin/basename: > Operation not supported > *** Error code 1 > > So I will probably need to checkout and compile on the Pi. What are typical > build times on a CM3+? Plus I am going to wear down the builtin eMMC much > faster. > > Kind regards and thanks, > Patrick > --00000000000098c21e05dd7ff114 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">= <div dir=3D"ltr" class=3D"gmail_attr">On Mon, Apr 25, 2022 at 1:26 PM Patri= ck M. Hausen <<a href=3D"mailto:pmh@hausen.com">pmh@hausen.com</a>> w= rote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0p= x 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br> <br> > Am 25.04.2022 um 21:18 schrieb Brooks Davis <<a href=3D"mailto:broo= ks@freebsd.org" target=3D"_blank">brooks@freebsd.org</a>>:<br> > Cross install is not supported.=C2=A0 As you have seen, certain tools = are<br> > bootstrapped on the build host and used during the install process.=C2= =A0 You<br> > might be able to get away with nuking<br> > /usr/obj/usr/src/arm64.aarch64/tmp/legacy (or maybe tmp) and then<br> > running `make toolchain` to build native versions of those tools.<br> <br> that comes as a big surprise and disappointment. What is the point of cross= -compiling, then?<br> How to update a small slow embedded platform?<br></blockquote><div><br></di= v><div>Cross installing is supported. Native installing of a cross build wo= rld isn't.</div><div><br></div><div>When I've had to do this in the= past, I've just mounted the embedded system on my</div><div>beefy serv= er under /mumble (allowing root on the embedded system for NFS) and did</di= v><div>a sudo make installworld ... DESTDIR=3D/mumble. Though I've forg= otten the gymnastics</div><div>to do etcupdate/mergemaster this way.</div><= div><br></div><div>Warner</div><div>=C2=A0</div><blockquote class=3D"gmail_= quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,= 204);padding-left:1ex"> I tried your suggestion - unfortunately no worky:<br> <br> cd /usr/src/tools/build;=C2=A0 make DIRPRFX=3Dtools/build/ DESTDIR=3D/usr/o= bj/usr/src/arm64.aarch64/tmp/legacy host-symlinks<br> Linking host tools into /usr/obj/usr/src/arm64.aarch64/tmp/legacy/bin<br> cp: chflags: /usr/obj/usr/src/arm64.aarch64/tmp/legacy/bin/basename: Operat= ion not supported<br> *** Error code 1<br> <br> So I will probably need to checkout and compile on the Pi. What are typical= <br> build times on a CM3+? Plus I am going to wear down the builtin eMMC much f= aster.<br> <br> Kind regards and thanks,<br> Patrick<br> </blockquote></div></div> --00000000000098c21e05dd7ff114--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfp2_ZxdUPbcW%2BtLxiuGvEnp65o8te%2BkfTU2-4o7HgZOnA>