On Sun, Jan 21, 2018 at 09:36:27PM -0600, Bruce Dubbs wrote:
> Bruce Dubbs wrote:
> > Ken Moffat wrote:
> > > On Sun, Jan 21, 2018 at 04:58:22AM +0000, Ken Moffat wrote:
> > > > I'll be putting rustc-1.23.0 into the book soon
> > > 
> > > Or maybe I won't.  I've had weird rust panics when building as a
> > > user (unrepeatable), and building as root (only advisable if you
> > > have good backups!) several builds where my package script exited
> > > with good status after the build (or after the tests).  The previous
> > > versions (1.21.0, 1.22.1) had none of those issues.
> > > 
> > > So, I was not especially *happy* about putting this version into the
> > > book, but resigned to it.  I had previously measured a build (time,
> > > space), but I forgot to check the size of the ~/.cargo files.  Also,
> > > it occurred to me that if root installs after a user build, root
> > > might need to download some of the cargo files (in fact, root
> > > downloaded all 235MB of them in my case).
> > > 
> > > But when I became root and tried a DESTDIR install a LOT of extra
> > > time was spent building the various cargo files (so far, so
> > > annoying) and then the install eventually failed because libssl2 was
> > > missing.  Trying to do a real install then failed in the same way,
> > > so I reinstalled in an all-root build, without adding libssl2.
> > > 
> > > Until that time I had never heard of libssl2, and I've no idea why
> > > it was suddenly needed.  But this series of issues makes me distrust
> > > this version of rustc.
> > > 
> > > But Bruce built 1.23.0 as a user and then installed as root without
> > > any problems (apart from with an unset DESTDIR variable when he
> > > wanted to do a real install), and without root downloading cargo
> > > files or apparently rebuilding them.
> > > 
> > > Looking at other distros -
> > > 
> > > gentoo : Still on 1.19.0, they will have to change if they add
> > > firefox-58.0 or latest librsvg.
> > > 
> > > debian : 1.23.0 moved into sid (unstable) two days ago.  I can't see
> > > anything special in what they do, but I think they do DESTDIR
> > > installs which are then packaged up.
> > > 
> > > arch : Using 1.23.0, but everything in arch is a DESTDIR install.
> > > 
> > > fedora : No idea, I couldn't find it - their rustc seems to be
> > > something entirely different.  Maybe they use previous rust to build
> > > current rust.
> > > 
> > > The problem with putting a DESTDIR install into the book is that it
> > > uses over 460MB of extra space.
> > > 
> > > I think I'm going to look more deeply at rust-1.22.1, particularly
> > > at whether it seems to build reliably as a user with a root DESTDIR
> > > install, and whether or not it is good enough for new librsvg.
> > > 
> > > Meanwhile, my current comments on rustc-1.23.0 rhyme with "block of
> > > white".
> > 
> > I looked at arch also and did a DESTDIR install.  I used:
> > 
> > cat << EOF > config.toml
> > # see src/bootstrap/config.toml.example for more possible options
> > [llvm]
> > targets = "X86"
> > 
> > [build]
> > # install cargo as well as rust
> > 
> > cargo = "/usr/bin/cargo"
> > rustc = "/usr/bin/rustc"
> > 
> > extended = true
> > verbose = 1
> > 
> > [install]
> > prefix = "/usr"
> > docdir = "share/doc/rustc-$VER"
> > 
> > [rust]
> > codegen-units = 0
> > debuginfo = true
> > 
> > # Whether or not line number debug information is emitted
> > #debuginfo-lines = false
> > 
> > channel = "stable"
> > EOF
> > 
> > ####
> > python x.py build --jobs=10
> > DESTDIR="$DEST" python x.py install
> > 
> > ----------
> > 
> > Those [rust] entries seemed to help.  No files were downloaded.
> > 
> > SBU=21.168
> > BUILD SIZE=4.2G including installed files.
> > 
> > Included in that 4.2G is 581M.  The space is taken up with:
> > 
> > 83M     /usr/bin    (34M stripped)
> > 365M    /usr/lib    (333M stripped)
> > 134M    /usr/share  Almost all in html documentation
> > 
> > looking at the output of ldd, I think we need a way to not have the
> > system use rpath.  I think there is a way to do that.  I'll try adding
> > rpath = true to the [rust] portion of config.toml.
> > 
> > For some reason arch removes:
> > -rw-r--r-- 1  132 Jan 21 20:15 usr/lib/rustlib/components
> > -rw-r--r-- 1 3430 Jan 21 20:15 usr/lib/rustlib/manifest-rustc
> > -rw-r--r-- 1    2 Jan 21 20:15 usr/lib/rustlib/rust-installer-version
> > 
> > but I do not see what harm those do.
> 
> OK, rebuilt with rpath = false and that worked.  I think all we really need
> is config.toml and the two x.py lines.  I don't think we should use python3.
> 
> ~/.cargo is 237M.  When I removed it, the build downloaded a lot of files
> and populated that directory.
> 
> Ken, try the above config.toml (with the rpath = false parameter) and see
> what you get.
> 
>   -- Bruce

It might be some hours before I get to this, it's already 4 am and I
want to look at what happens with DESTDIR by root in 1.22.1, and
then run the tests if that is ok.

ĸen
-- 
Truth, in front of her huge walk-in wardrobe, selected black leather
boots with stiletto heels for such a barefaced truth.
                                     - Unseen Academicals
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to