![]() This first thing I did was to load the missing debug symbols manually in gdb after hitting the crash, in order to hopefully get a useful backtrace: $ gdb build/armv7-unknown-linux-gnueabihf/test/debuginfo/borrowed-c-style-enum.stage2-armv7-unknown-linux-gnueabihf This obviously isn’t right and I don’t particularly like walking away from something like this without understanding it, so I decided to spend some time trying to figure out what is going on. According to the comments, the workaround is the same – installing the debug symbols for the dynamic loader (by installing the libc6-dbg package). I managed to recreate this test failure on an armhf box, but when I installed the debug symbols for the dynamic loader (contained in the libc6-dbg package) so that I could attempt to debug these crashes, the failing tests all started to pass.Ī quick search on the internet shows that I’m not the first person to hit this issue – for example, this bug reported in April 2016. The failing tests are all running some commands in gdb, and the inferior (tracee) is crashing inside the dynamic loader (/lib/ld-linux-armhf.so.3) before running any rust code. Note: Run with `RUST_BACKTRACE=1` for a backtrace. Thread ' debuginfo/borrowed-c-style-enum.rs' panicked at 'explicit panic', tools/compiletest/src/runtest.rs:2891:9 >/rustc-1.25.0+dfsg1+llvm/build/armv7-unknown-linux-gnueabihf/test/debuginfo/:10: Error in sourced command file:Įrror: line not found in debugger output: $1 = borrowed_c_style_enum::ABC::TheAĬommand: "/usr/bin/gdb" "-quiet" "-batch" "-nx" "-command=/>/rustc-1.25.0+dfsg1+llvm/build/armv7-unknown-linux-gnueabihf/test/debuginfo/" Program received signal SIGSEGV, Segmentation fault.Ġxf77c9f4e in ? () from /lib/ld-linux-armhf.so.3 Type "apropos word" to search for commands related to "word".īreakpoint 1 at 0xcc4: file />/rustc-1.25.0+dfsg1+llvm/src/test/debuginfo/borrowed-c-style-enum.rs, line 61. Type "show configuration" for configuration details.įor bug reporting instructions, please see:įind the GDB manual and other documentation resources online at: This GDB was configured as "arm-linux-gnueabihf". There is NO WARRANTY, to the extent permitted by law. This is free software: you are free to change and redistribute it. License GPLv3+: GNU GPL version 3 or later NOTE: compiletest thinks it is using GDB version 8001000Įxecuting "/usr/bin/gdb" "-quiet" "-batch" "-nx" "-command=/>/rustc-1.25.0+dfsg1+llvm/build/armv7-unknown-linux-gnueabihf/test/debuginfo/"Ĭopyright (C) 2018 Free Software Foundation, Inc. NOTE: compiletest thinks it is using GDB with native rust supportĮxecuting "/>/rustc-1.25.0+dfsg1+llvm/build/armv7-unknown-linux-gnueabihf/stage2/bin/rustc" "/>/rustc-1.25.0+dfsg1+llvm/src/test/debuginfo/borrowed-c-style-enum.rs" "-L" "/>/rustc-1.25.0+dfsg1+llvm/build/armv7-unknown-linux-gnueabihf/test/debuginfo" "-target=armv7-unknown-linux-gnueabihf" "-C" "prefer-dynamic" "-o" "/>/rustc-1.25.0+dfsg1+llvm/build/armv7-unknown-linux-gnueabihf/test/debuginfo/borrowed-c-style-enum.stage2-armv7-unknown-linux-gnueabihf" "-Crpath" "-Zmiri" "-Zunstable-options" "-Lnative=/>/rustc-1.25.0+dfsg1+llvm/build/armv7-unknown-linux-gnueabihf/native/rust-test-helpers" "-g" "-L" "/>/rustc-1.25.0+dfsg1+llvm/build/armv7-unknown-linux-gnueabihf/test/debuginfo/" Here’s an example test failure: - debuginfo/borrowed-c-style-enum.rs stdout. When preparing updates to rust 1.25 recently for Ubuntu 18.04 LTS, I hit a bunch of test failures on armhf which all looked very similar. We run the rust testsuite when building rustc packages in Ubuntu. I thought I’d document a recent issue I decided to take a look at – perhaps someone else will find it interesting or useful. I use gdb quite often, but until recently I’ve never really needed to understand how it works or debug it before. hasOwnProperty var be = ( e, t ) => ( ) => ( t || e ( ( t = /. getOwnPropertyDescriptor var qe = Object.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |