Changeset 7baeffe
- Timestamp:
- 01/15/2023 03:16:16 AM (17 months ago)
- Branches:
- 11.3, 12.0, 12.1, kea, ken/TL2024, ken/inkscape-core-mods, ken/tuningfonts, lazarus, lxqt, plabs/newcss, plabs/python-mods, python3.11, qt5new, rahul/power-profiles-daemon, renodr/vulkan-addition, trunk, xry111/llvm18, xry111/xf86-video-removal
- Children:
- 7ea158e
- Parents:
- 9335a99
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
general/prog/rust.xml
r9335a99 r7baeffe 7 7 <!ENTITY rust-download-http "https://static.rust-lang.org/dist/rustc-&rust-version;-src.tar.xz"> 8 8 <!ENTITY rust-download-ftp " "> 9 <!ENTITY rust-md5sum " e77ac3a786d013604061b17f99dd9b27">10 <!ENTITY rust-size "13 1MB">9 <!ENTITY rust-md5sum "96b082a8b44707eafa9d696923f40c28"> 10 <!ENTITY rust-size "136 MB"> 11 11 <!-- Gentle Reminder: buildsize is how much the user requires for the real 12 12 install, i.e. the source with its DESTDIR *plus* the DESTDIR. You … … 15 15 after the tests. --> 16 16 17 <!ENTITY rust-buildsize " 10 GB (516 MB installed) including 266 MB of ~/.cargo files for the user building this. Add 6.2 GB including extra 243MB of ~/.cargo files if running the tests">18 <!ENTITY rust-time " 21 SBU (including download time; add 10SBU for tests, both on a 4-core machine)">17 <!ENTITY rust-buildsize "9.4 GB (674 MB installed) including 360 MB of ~/.cargo files for the user building this. Add 6.5 GB including extra 312 MB of ~/.cargo files if running the tests"> 18 <!ENTITY rust-time "17 SBU (including download time; add 23 SBU for tests, both on a 4-core machine)"> 19 19 ]> 20 20 … … 258 258 <para> 259 259 To install into the 260 <filename class="directory">/opt</filename> directory, remove the symlink 260 <filename class="directory">/opt</filename> directory, remove any 261 existing <filename>/opt/rustc</filename> symlink 261 262 and create a new directory (i.e. with a different name if trying a 262 modified build ).263 modified build of the same version). 263 264 As the <systemitem class="username">root</systemitem> 264 265 user: 265 266 </para> 266 267 267 <screen role="root"><userinput>mkdir /opt/rustc-&rust-version; 268 <screen role="root"><userinput>mkdir /opt/rustc-&rust-version; && 268 269 ln -svfn rustc-&rust-version; /opt/rustc</userinput></screen> 269 270 … … 284 285 <screen><userinput>cat << EOF > config.toml 285 286 <literal># see config.toml.example for more possible options 286 # See the 8.4 book for an example using shipped LLVM 287 # e.g. if not installing clang, or using a version before 10.0 287 # See the 8.4 book for an old example using shipped LLVM 288 # e.g. if not installing clang, or using a version before 13.0 289 290 # tell x.py to not keep printing an annoying warning 291 changelog-seen = 2 292 288 293 [llvm] 289 294 # by default, rust will build for a myriad of architectures … … 297 302 docs = false 298 303 299 # install cargo as well as rust304 # install extended tools: cargo, clippy, etc 300 305 extended = true 306 307 # Specify which extended tools (those from the default install). 308 tools = ["cargo", "clippy", "rustfmt"] 301 309 302 310 [install] … … 308 316 rpath = false 309 317 310 # BLFS does not install the FileCheck executable from llvm, 311 # so disable codegen tests 312 codegen-tests = false 318 # BLFS used to not install the FileCheck executable from llvm, 319 # so disabled codegen tests. The assembly tests rely on FileCheck 320 # and cannot easily be disabled, so those will anyway fail if 321 # FileCheck has not been installed. 322 #codegen-tests = false 313 323 314 324 [target.x86_64-unknown-linux-gnu] … … 341 351 src/tools/cargo/Cargo.toml && --> 342 352 343 <screen><userinput>export RUSTFLAGS="$RUSTFLAGS -C link-args=-lffi" && 344 { [ ! -e /usr/include/libssh2.h ] || 353 <screen><userinput>{ [ ! -e /usr/include/libssh2.h ] || 345 354 export LIBSSH2_SYS_USE_PKG_CONFIG=1; } && 346 python3 ./x.py build --exclude src/tools/miri</userinput></screen>355 python3 ./x.py build</userinput></screen> 347 356 348 357 <note> … … 358 367 359 368 <para> 360 To run the tests issue <command>python3 ./x.py test --verbose 361 --no-fail-fast | tee rustc-testlog</command>: as with the build, that 362 will use all available CPUs. 363 </para> 364 365 <para> 366 At a minimum, 51 tests will fail: all 46 of the tests in 367 the <quote>assembly</quote> suite which are not skipped (various lints 368 cause the warnings in these tests to be treated as errors), and 369 5 other tests, 4 of which involve the 370 <filename>rustdoc-ui/issue-98690.rs</filename> file, and another one, 371 <filename>run-make-fulldeps/long-linker-command-lines</filename>. 372 <!-- If <command>gdb</command> is installed, another failure 373 (debuginfo/function-names.rs) can be expected. 374 # seems ok with 11.2 ken --> 369 To run the tests (again using all available CPUs) issue: 370 </para> 371 <!-- screen with nodump to lay it out on multiple lines --> 372 <screen role="nodump">export LD_LIBRARY_PATH=$PWD/build/x86_64-unknown-linux-gnu/stage1/lib/ && 373 python3 ./x.py test --verbose --no-fail-fast | 374 tee rustc-testlog ; 375 unset LD_LIBRARY_PATH</screen> 376 377 <para> 378 If <command>FileCheck</command> from <application>LLVM</application> has 379 not been installed, all 47 tests from the <quote>assembly</quote> suite 380 will fail. 375 381 </para> 376 382 … … 397 403 </para> 398 404 399 <!-- 400 The total number 401 of tests varies depending on which dependencies are present, e.g. more 402 will be run if <command>gdb</command> is available. If you wish, the 403 total number which were considered can be found if you run: 404 </para> 405 406 <screen remap="test"><userinput>egrep 'running [[:digit:]]+ test' rustc-testlog | awk '{ sum += $2 } END { print sum }'</userinput></screen>--> 407 408 <para> 409 The number of tests which failed can be found by running: 410 </para> 411 412 <screen remap="test"><userinput>grep '^test result:' rustc-testlog | awk '{ sum += $6 } END { print sum }'</userinput></screen> 413 414 <para> 415 And similarly if you care about how many tests passed use $4, for those 416 which were ignored (i.e. skipped) use $8 (and $10 for 'measured', $12 for 417 'filtered out' but both are probably zero). 405 <para> 406 The number of tests which passed and failed can be found by running: 407 </para> 408 409 <!-- split into two lines for narrower screen windows --> 410 <screen remap="test"><userinput>grep '^test result:' rustc-testlog | 411 awk '{sum1 += $4; sum2 += $6} END { print sum1 " passed; " sum2 " failed" }'</userinput></screen> 412 413 <para> 414 The other available fields are $8 for those which were ignored 415 (i.e. skipped), $10 for 'measured' and $12 for 'filtered out' but both 416 those last two are probably zero. 418 417 </para> 419 418 … … 422 421 </para> 423 422 424 <screen><userinput>DESTDIR=${PWD}/install python3 ./x.py install && 425 unset LIBSSH2_SYS_USE_PKG_CONFIG</userinput></screen> 423 <screen><userinput>DESTDIR=${PWD}/install python3 ./x.py install &&</userinput></screen> 426 424 427 425 <para> … … 436 434 437 435 <sect2 role="commands"> 438 <title>Command Explanations</title> 436 <title>Command Explanations</title> 439 437 440 438 <para> … … 454 452 <para> 455 453 <command>extended = true</command>: this installs Cargo alongside Rust. 454 </para> 455 456 <para> 457 <command>tools = ["cargo", "clippy", "rustfmt"]</command>: if the tools 458 are not scecified, the absence of <application>Miri</application> now 459 causes the install to fail. But <application>Miri</application> is not 460 built in the stable channel. Some of the other tools are unlikely to 461 be useful unless using (old) code analyzers or editing the standard library. 462 This set match those from the 'default' profile in binary command 463 <command>rustup</command> which are recommended for most users, except that 464 the documentation was disabled at the start of the '[build]' section. 456 465 </para> 457 466 … … 489 498 </para>--> 490 499 491 <para> 500 <!-- https://github.com/alexcrichton/ssh2-rs/issues/173 --> 501 <para> 502 <command>export LIBSSH2_SYS_USE_PKG_CONFIG=1</command>: Allow 503 <command>cargo</command> to link to system libssh2. 504 </para> 505 506 <!--<para> 492 507 <command>export RUSTFLAGS="$RUSTFLAGS -C link-args=-lffi"</command>: 493 508 This adds a link to libffi to any RUSTFLAGS you may already be passing 494 509 to the build. On some systems, linking fails to include libffi unless 495 510 this is used. The reason why this is needed is not clear. 496 </para> 497 498 <para> 499 <command>--exclude src/tools/miri</command>: For a long time, the miri 500 crate (an interpreter for the Midlevel Intermediate Representation) 501 has failed to build on releases. It is optional, but the failure 502 messages can persuade people that the whole build failed. However, 503 although it is not built in the main compile, with rustc-1.35.0 it 504 now got compiled during the install, but it was broken in that version. 505 <!-- might be unbroken in 1.36.0, if so remove broken from description 506 of miri below. https://github.com/rust-lang/rust/issues/61830 --> 507 Omitting it should save a little time. Even if this switch is 508 not given, miri is not installed. 511 2023-01-14 : assumed to be no longer needed, but it is some years 512 since one person reported needing this, keep it commented for the moment. 513 </para>--> 514 515 <para> 516 <command>export LD_LIBRARY_PATH=$PWD/build/x86_64-unknown-linux-gnu/stage1/lib/</command>: 517 In builds where rpath is enabled, the stage1 libraries can be used by the 518 tests. But BLFS has disabled rpath: this environment variable allows a lot 519 more tests to run. Without it there are no reported failures in most runs, 520 but some odd messages in the test log implying failures. 509 521 </para> 510 522 … … 517 529 <command>--no-fail-fast</command>: this switch ensures that the test suite 518 530 will not stop at the first error. 519 </para>520 521 <!-- https://github.com/alexcrichton/ssh2-rs/issues/173 -->522 <para>523 <command>export LIBSSH2_SYS_USE_PKG_CONFIG=1</command>: Allow524 <command>cargo</command> to link to system libssh2.525 531 </para> 526 532 … … 608 614 <segtitle>Installed Directories</segtitle> 609 615 610 <seglistitem> 616 <seglistitem> 611 617 <seg> 612 cargo-clippy, cargo-fmt, cargo-miri (optional), cargo, clippy-driver, 613 miri (optional), rls, rust-analyzer, rust-demangler, rust-gdb, 618 cargo-clippy, cargo-fmt, cargo, clippy-driver, rust-gdb, 614 619 rust-gdbgui, rust-lldb, rustc, rustdoc, and rustfmt 615 620 </seg> … … 657 662 </varlistentry> 658 663 659 664 <!-- <varlistentry id="cargo-miri"> 660 665 <term><command>cargo-miri</command></term> 661 666 <listitem> … … 668 673 </indexterm> 669 674 </listitem> 670 </varlistentry> 675 </varlistentry>--> 671 676 672 677 <varlistentry id="cargo"> … … 694 699 </varlistentry> 695 700 696 701 <!-- <varlistentry id="miri"> 697 702 <term><command>miri</command></term> 698 703 <listitem> … … 745 750 </indexterm> 746 751 </listitem> 747 </varlistentry> 752 </varlistentry> --> 748 753 749 754 <varlistentry id="rust-gdb"> -
introduction/welcome/changelog.xml
r9335a99 r7baeffe 43 43 <itemizedlist> 44 44 <listitem> 45 <para>[ken] - Update to rustc-1.66.1 (security update). Fixes 46 <ulink url="&blfs-ticket-root;17501">#17501</ulink>. Please 47 read yesterday's entry for 'Install FileCheck' if you have 48 installed recent LLVM without that utility.</para> 49 </listitem> 50 <listitem> 45 51 <para>[timtas] - Update to thunar-4.18.2. Fixes 46 52 <ulink url="&blfs-ticket-root;17498">#17498</ulink>.</para> -
packages.ent
r9335a99 r7baeffe 338 338 <!ENTITY ruby-version "&ruby-minor-version;.&ruby-patch-version;"> 339 339 <!ENTITY ruby-gemdir "/usr/lib/ruby/gems/&ruby-minor-version;.0"> 340 <!ENTITY rust-version "1.6 4.0">340 <!ENTITY rust-version "1.66.1"> 341 341 <!ENTITY scons-version "4.4.0"> 342 342 <!ENTITY slang-version "2.3.3">
Note:
See TracChangeset
for help on using the changeset viewer.