Skip to content

Instantly share code, notes, and snippets.

@pnkfelix
Created May 7, 2014 14:46
Show Gist options
  • Save pnkfelix/9c2c186b420645b852b3 to your computer and use it in GitHub Desktop.
Save pnkfelix/9c2c186b420645b852b3 to your computer and use it in GitHub Desktop.
% time remake --trace check-stage1-doc-crate-std NO_MKFILE_DEPS=1 TESTNAME=bitxor
GNU Make 3.82+dbg0.9
Built for i386-apple-darwin12.5.0
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Reading makefiles...
cfg: build triple x86_64-apple-darwin
cfg: host triples x86_64-apple-darwin
cfg: target triples x86_64-apple-darwin
cfg: enabling more debugging (CFG_ENABLE_DEBUG)
cfg: host for x86_64-apple-darwin is x86_64
cfg: os for x86_64-apple-darwin is apple-darwin
cfg: using ccache clang
cfg: including test rules
Updating goal targets....
/Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:847 File `check-stage1-doc-crate-std' does not exist.
/Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:866 File `check-stage1-H-x86_64-apple-darwin-doc-crate-std' does not exist.
/Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:826 File `check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std' does not exist.
/Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:780 File `check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std-exec' does not exist.
/Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:780 File `tmp/check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std.ok' does not exist.
/Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:780 Must remake target `tmp/check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std.ok'.
Invoking recipe from /Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:780 to update target `tmp/check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std.ok'.
##>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
echo run doc-crate-std [x86_64-apple-darwin]
##<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
run doc-crate-std [x86_64-apple-darwin]
##>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib" x86_64-apple-darwin/stage1/bin/rustdoc --test /Users/fklock/Dev/Mozilla/rust-fixstage1/src/libstd/lib.rs --test-args "bitxor" && touch tmp/check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std.ok
##<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
running 1 test
test bool::bitxor_0 ... FAILED
failures:
---- bool::bitxor_0 stdout ----
task 'bool::bitxor_0' failed at 'test executable failed:
Some(dyld: lazy symbol binding failed: Symbol not found: __ZN10lang_start20h38ab1f71c3adb8d02wd9v0.11.preE
Referenced from: /var/folders/k3/378c5t615d747q30wd1ps4pw0000gn/T/rs-85270-0-rustdoctest/rust_out
Expected in: /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/libnative-83574243-0.11-pre.dylib
dyld: Symbol not found: __ZN10lang_start20h38ab1f71c3adb8d02wd9v0.11.preE
Referenced from: /var/folders/k3/378c5t615d747q30wd1ps4pw0000gn/T/rs-85270-0-rustdoctest/rust_out
Expected in: /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/libnative-83574243-0.11-pre.dylib
)', /Users/fklock/Dev/Mozilla/rust-fixstage1/src/librustdoc/test.rs:163
failures:
bool::bitxor_0
test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured
task '<main>' failed at 'Some tests failed', /Users/fklock/Dev/Mozilla/rust-fixstage1/src/libtest/lib.rs:222
/Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:780: *** [tmp/check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std.ok] Error 101
#0 tmp/check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std.ok at /Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:780
#1 check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std-exec at /Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:780
#2 check-stage1-T-x86_64-apple-darwin-H-x86_64-apple-darwin-doc-crate-std at /Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:826
#3 check-stage1-H-x86_64-apple-darwin-doc-crate-std at /Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:866
#4 check-stage1-doc-crate-std at /Users/fklock/Dev/Mozilla/rust-fixstage1/mk/tests.mk:847
Command-line invocation:
"/Users/fklock/opt/remake/bin/remake --trace check-stage1-doc-crate-std NO_MKFILE_DEPS=1 TESTNAME=bitxor"
real 0m3.567s
user 0m2.939s
sys 0m0.408s
% true Okay, so that was the whole makefile run.
% true Lets narrow in on some particulars.
% DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib" x86_64-apple-darwin/stage1/bin/rustdoc --test /Users/fklock/Dev/Mozilla/rust-fixstage1/src/libstd/lib.rs --test-args "bitxor"
running 1 test
test bool::bitxor_0 ... FAILED
failures:
---- bool::bitxor_0 stdout ----
task 'bool::bitxor_0' failed at 'test executable failed:
Some(dyld: lazy symbol binding failed: Symbol not found: __ZN10lang_start20h38ab1f71c3adb8d02wd9v0.11.preE
Referenced from: /var/folders/k3/378c5t615d747q30wd1ps4pw0000gn/T/rs-85296-0-rustdoctest/rust_out
Expected in: /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/libnative-83574243-0.11-pre.dylib
dyld: Symbol not found: __ZN10lang_start20h38ab1f71c3adb8d02wd9v0.11.preE
Referenced from: /var/folders/k3/378c5t615d747q30wd1ps4pw0000gn/T/rs-85296-0-rustdoctest/rust_out
Expected in: /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/libnative-83574243-0.11-pre.dylib
)', /Users/fklock/Dev/Mozilla/rust-fixstage1/src/librustdoc/test.rs:163
failures:
bool::bitxor_0
test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured
task '<main>' failed at 'Some tests failed', /Users/fklock/Dev/Mozilla/rust-fixstage1/src/libtest/lib.rs:222
% DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH" x86_64-apple-darwin/stage1/bin/rustdoc --test /Users/fklock/Dev/Mozilla/rust-fixstage1/src/libstd/lib.rs --test-args "bitxor"
running 1 test
test bool::bitxor_0 ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
% nm /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/libnative-83574243-0.11-pre.dylib | grep lang_start
0000000000039300 t __ZN10lang_start12closure.7213E
0000000000038f10 T __ZN10lang_start20h16b3569c78bfbb222wd9v0.11.preE
% true Note that __ZN10lang_start20h16b3569c78bfbb222wd9v0.11.preE != __ZN10lang_start20h38ab1f71c3adb8d02wd9v0.11.preE
%
@pnkfelix
Copy link
Author

pnkfelix commented May 7, 2014

Here is another variant of potential interest. In this version, in addition to adding putting the host rpath setting onto the $DYLD_LIBRARY_PATH, it also tells rustdoc to look in that directory for its own lookups, via rustdoc's -L option.

The main point I'm making here is that this tells us where rustdoc is forcibly adding to its own library lookup path, despite the settings of the DYLD_LIBRARY_PATH, as you can see by looking at duplicate entries during the inspection of the dylib candidates.

% echo $DYLD_LIBRARY_PATH

% DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib" x86_64-apple-darwin/stage1/bin/rustdoc --test /Users/fklock/Dev/Mozilla/rust-fixstage1/src/libstd/lib.rs --test-args "bitxor" -L /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib

running 1 test
test bool::bitxor_0 ... FAILED

failures:

---- bool::bitxor_0 stdout ----
    <anon>:1:1: 1:1 error: multiple dylib candidates for `std` found
    <anon>:1 
             ^
    <anon>:1:1: 1:1 note: candidate #1: /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib/libstd-aad93cea-0.11-pre.dylib
    <anon>:1 
             ^
    <anon>:1:1: 1:1 note: candidate #2: /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/libstd-aad93cea-0.11-pre.dylib
    <anon>:1 
             ^
    <anon>:1:1: 1:1 error: multiple dylib candidates for `libc` found
    <anon>:1 
             ^
    <anon>:1:1: 1:1 note: candidate #1: /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/liblibc-3574b280-0.11-pre.dylib
    <anon>:1 
             ^
    <anon>:1:1: 1:1 note: candidate #2: /Users/fklock/Dev/Mozilla/rust-fixstage1/objdir-check1-dbgopt/x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib/liblibc-3574b280-0.11-pre.dylib
    <anon>:1 
             ^
    error: aborting due to 2 previous errors
    task 'bool::bitxor_0' failed at '~Any', /Users/fklock/Dev/Mozilla/rust-fixstage1/src/libsyntax/diagnostic.rs:120


failures:
    bool::bitxor_0

test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured

task '<main>' failed at 'Some tests failed', /Users/fklock/Dev/Mozilla/rust-fixstage1/src/libtest/lib.rs:222
% 

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment