On Wed, Jan 23, 2019 at 07:28:32PM -0600, Bruce Dubbs via blfs-dev wrote:
> On 01/23/2019 05:43 PM, Ken Moffat via blfs-dev wrote:
> > It has been established that rustc-1.32.0 needs a newrer LLVM than
> > the current release (various reports of cargo failures on Arch and
> > probably fedora, nixos).
> > https://github.com/rust-lang/rust/issues/57762
> > 
> > But if anyone has installed 1.32.0 with the shipped LLVM (I know
> > Bruce has), rebuilding with the shipped LLVM make rust unusable.
> 
> I believe I used the system llvm-7.0.1:
> 

Yes, that was a typo in my initial post, please see my follow-up.

Pierre had the same problem in a VM, it might be that on your
machine it works fine - but alternatively it might break
unexpectedly at some point in the future.  If so, please remember
this thread.

> [llvm]
> targets = "X86"
> ...
> [target.x86_64-unknown-linux-gnu]
> llvm-config = "/usr/bin/llvm-config"
> ==========
> I did not run into problems other than the vergen problem at the very end of
> the build which I fixed with:
> 

Actually a miri problem (which is mentioned for 1.29.x), but the
output happens to be different now.  Not an error.  I'll be disabling
miri in the update.

> 
> oldsum='1b9696d96ec5d68984d060af80d7ba0ed4eb533978a0efb05ed4b8465f20d04f'
> 
> newsum='6aba5e34f93dc7051dfad05b98a18e9156f27e7b431fe1d2398cb6061c0a1dba'
> 
> sed -e '/vergen /s/3.0.3/3.0.4/' \
>     -e "s/$oldsum/$newsum/"     \
>     -e '/name = "vergen"/{N;s/3.0.3/3.0.4/}' \
>     -i Cargo.lock  &&
> 
> > I
> > first met this on my main dev machine, and could not establish what
> > had gone wrong.  Blowing away the rust/cargo binaries and rustlib
> > (also the docs, for cleanliness) allowed me to install the version
> > with shipped libraries and then use it.
> > 
> > Meanwhile on my haswell which had been using 1.29.2 with system
> > LLVM, the update to 1.32.0 with its shipped LLVM went fine, used it
> > to build firefox.
> > 
> > Now I've gone back to another machine where the version of 1.32.0
> > with system LLVM had appeared to be ok, and installed 1.32.0 with
> > its shipped LLVM (because I assume that sooner or later the system
> > version will break, and I have no way of identifying in my scripts
> > whether or not rustc is using system LLVM.
> > 
> > Bang!  Trying to build firefox (to test if alsa still works) fails
> > quickly, again it cannot find the 'std' crate compiled for rustc
> > 1.32.0, only versions compiled for 1.25.0, 1.29.0, 1.29.2.
> > 
> > So here too I need to blow away the installed rust and rustlib.
> 
> I have built librsvg with rustc-1.32.0, but not tried firefox.
> 

It might work for you.  If not, you get to keep the pieces.  Such is
normal in development (and ideally we will catch most problems like
this before putting them into the book).

> > I vaguely remember that there were issues in the past where I ended
> > up dropping back to the previous version (perhaps 1.23.0 -> 1.22)
> > and that Bruce had problems doing that which were fixed by blowing
> > away his installed rust.
> 
> I note that right now I have lots of rustc libraries installed.  There are
> 66 that start with librust:
> 
> /usr/lib/librustc-3d910d8f7b901176.so
> /usr/lib/librustc-c6ce0ba07588722d.so
> /usr/lib/librustc-c796cf9aaca5fadb.so
> /usr/lib/librustc_allocator-3b9f95af21cf3f66.so
> /usr/lib/librustc_allocator-119d27ec915d9b98.so
> /usr/lib/librustc_allocator-b3c1ab230b643dcf.so
> ...

Three versions.  A package-management issue (i.e. "not our
problem").

> 
> Perhaps we should remove all of these before the final install.  I note that
> there are 3513 files in install/usr/lib.  Alternatively we might want to
> install in /opt the way we do for qt5.
> 
>   -- Bruce

/opt/something is fine for testing.  /opt/rust-version would be
better (and allow the old version to be kept - just fix PATH up
manually and use one for building old versions, another for building
current and development) - see what you put in the librsvg ticket re
their changelog.

It might come to that, but for the moment I prefer to just have one
in the book, and to ensure that what we have works for all the
packages which need it.  The extended testing is how I came up with
my current .sig.

ĸen
-- 
thread 'main' panicked at 'giraffe',
/tmp/rustc-1.32.0-src/src/test/run-fail/while-panic.rs:17:13
-- 
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to