@alexcrichton Will do.
Here are the results for rust-belt , a Piston game, on macOS (with cargo clean
s in between).
Specs: Macbook Pro i7-4980HQ (4 core / 8 thread) CPU @ 2.80GHz with SSD
$ time cargo +nightly build --release
real 1m37.498s
user 5m45.737s
sys 0m15.276s
$ RUSTFLAGS="-C codegen-units=16 -Z thinlto" time cargo +nightly build --release
99.09 real 527.33 user 17.32 sys
If I’m reading that correctly, the compile time slowed down about 1% when ThinLTO was enabled.
m4b
October 12, 2017, 5:08am
46
panopticon which has pretty horrible compile times:
RUSTFLAGS='-C codegen-units=16 -Z thinlto' cargo +nightly build --release
Finished release [optimized] target(s) in 408.28 secs
Finished release [optimized] target(s) in 344.5 secs
cargo +nightly build --release
Finished release [optimized] target(s) in 599.45 secs
cargo bench
running 2 tests
test disassemble_static_amd64_elf_new ... bench: 5,211,118,293 ns/iter (+/- 109,697,682)
test disassemble_static_amd64_elf_old ... bench: 16,908,245,920 ns/iter (+/- 613,322,513)
RUSTFLAGS='-C codegen-units=16 -Z thinlto' cargo +nightly bench
running 2 tests
test disassemble_static_amd64_elf_new ... bench: 2,973,503,415 ns/iter (+/- 218,444,217)
test disassemble_static_amd64_elf_old ... bench: 6,114,065,079 ns/iter (+/- 521,222,947)
I’d be amazed if the bench was that affected; i will try on more realistic thing i have some numbers and report back difference; otherwise, looks like really great work, congrats! can’t wait till this is in stable
bluss
October 13, 2017, 9:47pm
47
Is there a little to win by using more threads? I see that even if we have 16 codegen units, the default number of threads are still used (for example 8 threads with 4 cores times 2 for HT).
What I can see there are some small gains in bumping the number of threads from for example 8 to 16 for me, −4-5% compile time with a release build and thinlto.
Right now there’s no programmatic way to specify “use this many threads”, but rather you control this by creating a jobserver with more tokens available. For example you can emulate this with cargo build -j30
(allow up to 30 threads) or invoke rustc from a Makefile
and then use make -j30
splav
October 14, 2017, 10:49pm
49
Just tested servo build from scratch. Rustc 2017-10-13-alt (default for servo master at that time)
RUSTFLAGS='-C codegen-units=16 -Z thinlto' ./mach build --release
Finished release [optimized] target(s) in 448.72 secs
./mach build --release
Finished release [optimized] target(s) in 1082.6 secs
Don’t really know how to test the performance in deterministic way, but quick internal profiling showed no major difference for few sites I’ve checked. Great work!
The setup: Ryzen 7 1700 @ 3.5GHz + mid level SATA SSD.
5 Likes
Thanks again everyone for helping to fill out the data points here! I’ve opened a tracking issue for turning this on by default.
1 Like
kraai
October 17, 2017, 2:14pm
51
When I try to build rustfmt-nightly on Windows, I see the following errors:
$ RUSTFLAGS='-C codegen-units=16 -Z thinlto' cargo install -f rustfmt-nightly
...
error: linking with `link.exe` failed: exit code: 1120
|
= note: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\bin\\amd64\\link.exe" "/NOLOGO" "/NXCOMPAT" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff0-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff1-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff10-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff11-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff12-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff13-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff14-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff15-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff2-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff3-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff4-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff5-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff6-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff7-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff8-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff9-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o" "/OUT:C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.exe" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt_format_diff-665ff9c52abd2b17.crate.allocator.rust-cgu.o" "/OPT:REF,ICF" "/DEBUG" "/NATVIS:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\liballoc.natvis" "/NATVIS:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libcore.natvis" "/LIBPATH:C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libserde_json-d6f13a424f690f05.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libserde-03d2ab45d68301b0.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libitoa-16ad17ea6e0a3e37.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libenv_logger-23c12dd3db32e711.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libregex-ce6eadb488da3be8.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libutf8_ranges-81e13c39fa54ce55.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libregex_syntax-d3ab202bb495a5a1.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\liblog-20bcf03dbfcee5bf.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libaho_corasick-e63dd82e33ac83b9.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libmemchr-f6f3d279a203349a.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\liblibc-ce7a7bbd7d5f44b2.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libthread_local-95b9fe4362a15185.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libunreachable-40635ee7b0f61d7d.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libvoid-8549fb255bea2a3e.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\liblazy_static-3dc9379afa34801c.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libgetopts-66c55bee9b5e6780.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libnum_traits-4af6d1b6ec560609.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libdtoa-3a57a19f7b214c97.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libstd-2c973d468aa52913.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libpanic_unwind-10dcb2bb73715353.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libunwind-eac2a22c7ef68dc5.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\liblibc-6232007b55cca9f2.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\liballoc_system-968b8d6a8dcae5d4.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\liballoc-bba7ff6cfd33a952.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libstd_unicode-6001d57e726caccd.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\librand-d98f06e2ac3721a9.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcore-15daeee4c05dda88.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcompiler_builtins-b02255a955089c1d.rlib" "advapi32.lib" "ws2_32.lib" "userenv.lib" "shell32.lib" "msvcrt.lib"
= note: rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff15-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o : warning LNK4217: locally defined symbol _ZN10serde_json3ser6ESCAPE17hd6d5ef11338f308cE imported in function _ZN10serde_json3ser18format_escaped_str17hb1034a28c073c1d6E
rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff15-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o : warning LNK4217: locally defined symbol _ZN10serde_json3ser9Formatter17write_char_escape10HEX_DIGITS17h9cc0dbf313088c5eE imported in function _ZN10serde_json3ser18format_escaped_str17hb1034a28c073c1d6E
rustfmt_format_diff-665ff9c52abd2b17.rustfmt_format_diff6-410b502370b6420c192b8d5aff46dc00-exe.rs.rust-cgu.o : warning LNK4217: locally defined symbol _ZN3log20MAX_LOG_LEVEL_FILTER17h8aa4231d11f7c522E imported in function _ZN19rustfmt_format_diff4main17h4d7cea4d59181420E.llvm.9E2C9F95
libenv_logger-23c12dd3db32e711.rlib(env_logger-23c12dd3db32e711.env_logger15-16b1a33c5508df059c2c23f55e5a374c.rs.rust-cgu.o) : warning LNK4217: locally defined symbol _ZN3log5STATE17h059fe72b70e84735E imported in function _ZN3log10set_logger17h7e86a88f68a8315bE
libenv_logger-23c12dd3db32e711.rlib(env_logger-23c12dd3db32e711.env_logger15-16b1a33c5508df059c2c23f55e5a374c.rs.rust-cgu.o) : warning LNK4217: locally defined symbol _ZN3log6LOGGER17h186482a5b90c86f2E imported in function _ZN3log10set_logger17h7e86a88f68a8315bE
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa18CACHED_POWERS_F_6417h94f2f8d3bb7c5bceE referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa18CACHED_POWERS_E_6417h987f9d329de16228E referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write9digit_gen5POW1017hb4f7235eab3f1b8cE referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa14DEC_DIGITS_LUT17h158d7d1c239d4220E referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
C:\Users\kraaimx\AppData\Local\Temp\cargo-install.beHFxoQpmU4p\release\deps\rustfmt_format_diff-665ff9c52abd2b17.exe : fatal error LNK1120: 4 unresolved externals
error: aborting due to previous error
error: Could not compile `rustfmt-nightly`.
warning: build failed, waiting for other jobs to finish...
error: linking with `link.exe` failed: exit code: 1120
|
= note: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\bin\\amd64\\link.exe" "/NOLOGO" "/NXCOMPAT" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt0-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt1-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt10-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt11-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt12-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt13-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt14-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt15-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt2-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt3-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt4-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt5-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt6-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt7-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt8-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.cargo_fmt9-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o" "/OUT:C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.exe" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\cargo_fmt-8c2152180c5063ae.crate.allocator.rust-cgu.o" "/OPT:REF,ICF" "/DEBUG" "/NATVIS:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\liballoc.natvis" "/NATVIS:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libcore.natvis" "/LIBPATH:C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libserde_json-d6f13a424f690f05.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libitoa-16ad17ea6e0a3e37.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libnum_traits-4af6d1b6ec560609.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libdtoa-3a57a19f7b214c97.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libgetopts-66c55bee9b5e6780.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libserde-03d2ab45d68301b0.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libstd-2c973d468aa52913.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libpanic_unwind-10dcb2bb73715353.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libunwind-eac2a22c7ef68dc5.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\liblibc-6232007b55cca9f2.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\liballoc_system-968b8d6a8dcae5d4.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\liballoc-bba7ff6cfd33a952.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libstd_unicode-6001d57e726caccd.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\librand-d98f06e2ac3721a9.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcore-15daeee4c05dda88.rlib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcompiler_builtins-b02255a955089c1d.rlib" "advapi32.lib" "ws2_32.lib" "userenv.lib" "shell32.lib" "msvcrt.lib"
= note: cargo_fmt-8c2152180c5063ae.cargo_fmt7-4e57794fabe8fdbb8127420435be5acc-exe.rs.rust-cgu.o : warning LNK4217: locally defined symbol _ZN10serde_json2de5POW1017h25bee10826a4ad32E imported in function _ZN46_$LT$serde_json..de..Deserializer$LT$R$GT$$GT$13parse_decimal17h9e61526d5f212480E.llvm.136005A1
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa18CACHED_POWERS_F_6417h94f2f8d3bb7c5bceE referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa18CACHED_POWERS_E_6417h987f9d329de16228E referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write9digit_gen5POW1017hb4f7235eab3f1b8cE referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa14DEC_DIGITS_LUT17h158d7d1c239d4220E referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
C:\Users\kraaimx\AppData\Local\Temp\cargo-install.beHFxoQpmU4p\release\deps\cargo_fmt-8c2152180c5063ae.exe : fatal error LNK1120: 4 unresolved externals
error: aborting due to previous error
error: Could not compile `rustfmt-nightly`.
warning: build failed, waiting for other jobs to finish...
error: linking with `link.exe` failed: exit code: 1120
|
= note: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\bin\\amd64\\link.exe" "/NOLOGO" "/NXCOMPAT" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt0-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt1-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt10-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt11-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt12-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt13-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt14-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt15-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt2-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt3-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt4-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt5-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt6-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt7-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt8-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.rustfmt9-a5aa070d5664bee92c763b3600cb3c50-exe.rs.rust-cgu.o" "/OUT:C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.exe" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\rustfmt-f7f5457ac0f64c8c.crate.allocator.rust-cgu.o" "/OPT:REF,ICF" "/DEBUG" "/NATVIS:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\liballoc.natvis" "/NATVIS:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libcore.natvis" "/LIBPATH:C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\librustfmt_nightly-67d32400cba0513b.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libserde_json-d6f13a424f690f05.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libdtoa-3a57a19f7b214c97.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libtoml-f877a58d4d247e71.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libenv_logger-23c12dd3db32e711.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libgetopts-66c55bee9b5e6780.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libserde-03d2ab45d68301b0.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libitoa-16ad17ea6e0a3e37.rlib" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "syntax-c5577fbbbe64eddd.dll.lib" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "rustc_errors-29dbb0dd56737fc9.dll.lib" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "syntax_pos-68d5026e02f80631.dll.lib" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "rustc_data_structures-f7691feca31f508f.dll.lib" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "term-e5ba86d60fc9aad9.dll.lib" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "rustc_cratesio_shim-1b1bfb7ced22f2fe.dll.lib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libterm-94e2930cde346c71.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libkernel32-05c0bc9ab7f4a69f.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libunicode_segmentation-6393e6a650316b47.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libregex-ce6eadb488da3be8.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libregex_syntax-d3ab202bb495a5a1.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libthread_local-95b9fe4362a15185.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\liblazy_static-3dc9379afa34801c.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libunreachable-40635ee7b0f61d7d.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libaho_corasick-e63dd82e33ac83b9.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libmemchr-f6f3d279a203349a.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\liblibc-ce7a7bbd7d5f44b2.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libvoid-8549fb255bea2a3e.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libutf8_ranges-81e13c39fa54ce55.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libdiff-1c86bfc43bfa625c.rlib" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "serialize-445d9c52b5c212f1.dll.lib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libnum_traits-4af6d1b6ec560609.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libstrings-da4391a987376d31.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\liblog-20bcf03dbfcee5bf.rlib" "C:\\Users\\kraaimx\\AppData\\Local\\Temp\\cargo-install.beHFxoQpmU4p\\release\\deps\\libwinapi-18047b7b8f2b0fc3.rlib" "/LIBPATH:C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "std-2c973d468aa52913.dll.lib" "C:\\Users\\kraaimx\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcompiler_builtins-b02255a955089c1d.rlib" "kernel32.lib" "kernel32.lib" "advapi32.lib" "ws2_32.lib" "userenv.lib" "shell32.lib" "msvcrt.lib"
= note: librustfmt_nightly-67d32400cba0513b.rlib(rustfmt_nightly-67d32400cba0513b.rustfmt_nightly11-1dfba6e9b973b649af1fd954268fc2dc.rs.rust-cgu.o) : warning LNK4217: locally defined symbol _ZN10serde_json2de5POW1017h25bee10826a4ad32E imported in function _ZN46_$LT$serde_json..de..Deserializer$LT$R$GT$$GT$13parse_decimal17h70670a329a504ab2E.llvm.A65392A6
librustfmt_nightly-67d32400cba0513b.rlib(rustfmt_nightly-67d32400cba0513b.rustfmt_nightly5-1dfba6e9b973b649af1fd954268fc2dc.rs.rust-cgu.o) : warning LNK4217: locally defined symbol _ZN3log20MAX_LOG_LEVEL_FILTER17h8aa4231d11f7c522E imported in function _ZN15rustfmt_nightly12format_lines17hdba8479c954e802fE
librustfmt_nightly-67d32400cba0513b.rlib(rustfmt_nightly-67d32400cba0513b.rustfmt_nightly8-1dfba6e9b973b649af1fd954268fc2dc.rs.rust-cgu.o) : warning LNK4217: locally defined symbol _ZN3log20MAX_LOG_LEVEL_FILTER17h8aa4231d11f7c522E imported in function _ZN15rustfmt_nightly5items18rewrite_type_alias17h0777ef5031d0346bE
librustfmt_nightly-67d32400cba0513b.rlib(rustfmt_nightly-67d32400cba0513b.rustfmt_nightly9-1dfba6e9b973b649af1fd954268fc2dc.rs.rust-cgu.o) : warning LNK4049: locally defined symbol _ZN3log20MAX_LOG_LEVEL_FILTER17h8aa4231d11f7c522E imported
librustfmt_nightly-67d32400cba0513b.rlib(rustfmt_nightly-67d32400cba0513b.rustfmt_nightly4-1dfba6e9b973b649af1fd954268fc2dc.rs.rust-cgu.o) : warning LNK4049: locally defined symbol _ZN3log20MAX_LOG_LEVEL_FILTER17h8aa4231d11f7c522E imported
libenv_logger-23c12dd3db32e711.rlib(env_logger-23c12dd3db32e711.env_logger15-16b1a33c5508df059c2c23f55e5a374c.rs.rust-cgu.o) : warning LNK4217: locally defined symbol _ZN3log5STATE17h059fe72b70e84735E imported in function _ZN3log10set_logger17h7e86a88f68a8315bE
libenv_logger-23c12dd3db32e711.rlib(env_logger-23c12dd3db32e711.env_logger15-16b1a33c5508df059c2c23f55e5a374c.rs.rust-cgu.o) : warning LNK4217: locally defined symbol _ZN3log6LOGGER17h186482a5b90c86f2E imported in function _ZN3log10set_logger17h7e86a88f68a8315bE
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa18CACHED_POWERS_F_6417h94f2f8d3bb7c5bceE referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa18CACHED_POWERS_E_6417h987f9d329de16228E referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write9digit_gen5POW1017hb4f7235eab3f1b8cE referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
libserde_json-d6f13a424f690f05.rlib(serde_json-d6f13a424f690f05.serde_json6-cc0a6a5e7790be5e30949fa3ed0fdce1.rs.rust-cgu.o) : error LNK2019: unresolved external symbol __imp__ZN4dtoa14DEC_DIGITS_LUT17h158d7d1c239d4220E referenced in function _ZN38_$LT$f64$u20$as$u20$dtoa..Floating$GT$5write17h86f0f1a7c2bfbad6E
C:\Users\kraaimx\AppData\Local\Temp\cargo-install.beHFxoQpmU4p\release\deps\rustfmt-f7f5457ac0f64c8c.exe : fatal error LNK1120: 4 unresolved externals
error: aborting due to previous error
error: failed to compile `rustfmt-nightly v0.2.9`, intermediate artifacts can be found at `C:\Users\kraaimx\AppData\Local\Temp\cargo-install.beHFxoQpmU4p`
Caused by:
Could not compile `rustfmt-nightly`.
To learn more, run the command again with --verbose.
I haven’t seen similar errors when not using ThinLTO.
Thanks for the report! I’ve filed an upstream bug report
I’ve posted a summary of all results in this thread so far to the tracking issue, the results look quite promising!
yjh0502
October 20, 2017, 5:25am
54
Compile times for an internal project
without flags
Finished release [optimized + debuginfo] target(s) in 430.8 secs
with codegen-unit=16, thinlto
Finished release [optimized + debuginfo] target(s) in 141.93 secs
It seems that there’s no significant performance regression.
@alexcrichton I’m happy to report that on the latest nightly, rust-belt
builds on Windows 10 successfully with ThinLTO without any explosions .
nightly-x86_64-pc-windows-msvc updated - rustc 1.22.0-nightly (4750c1ec0 2017-10-19)
Normal
cargo +nightly build --release
Finished release [optimized] target(s) in 160.18 secs
ThinLTO
RUSTFLAGS='-C codegen-units=16 -Z thinlto'
cargo +nightly build --release
Finished release [optimized] target(s) in 154.72 secs
So that’s actually a speed-up of about 4% for this single data point.
Many moons have passed during which time we’ve fixed lots of bugs and fleshed out more and more pieces. I’m happy to say though that ThinLTO and multiple codegen units are now turned on by default in release mode! When coupled with the fact that multiple codegen units are enabled in debug mode we now have parallel codegen enabled by default in rustc for all modes!
As always if you encounter any bugs please file an issue, otherwise I hope we can all start cashing in on those average 2x faster compiles !
9 Likes
This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.