New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 727193 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 3
Type: Bug

Blocking:
issue 82385
issue 683729



Sign in to add a comment

vs2017 (19.11.25303) with lld failed due to undefined symbols

Project Member Reported by tikuta@chromium.org, May 29 2017

Issue description

chromium revision: https://chromium.googlesource.com/chromium/src/+/4cbe11cc4d70466d33541036f188028879cff931


OS: Windos10, version 1511
Machine: Z840

args.gn:
symbol_level=0
is_component_build=true
is_debug=false
use_lld = true
enable_nacl = false

cmd log:
C:\src\chromium\src>ninja -C out\Release base
ninja: Entering directory `out\Release'
[330/330] LINK(DLL) base.dll base.dll.lib
FAILED: base.dll base.dll.lib
C:/src/depot_tools/python276_bin/python.exe ../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x64 False ../../third_party/llvm-build/Release+Asserts/bin/lld-link.exe /nologo /IMPLIB:./base.dll.lib /DLL /OUT:./base.dll /PDB:./base.dll.pdb @./base.dll.rsp
..\..\third_party\llvm-build\Release+Asserts\bin\lld-link.exe: warning: msvcrt.lib(loadcfg.obj): undefined symbol: __guard_iat_table
..\..\third_party\llvm-build\Release+Asserts\bin\lld-link.exe: warning: msvcrt.lib(loadcfg.obj): undefined symbol: __guard_iat_count
..\..\third_party\llvm-build\Release+Asserts\bin\lld-link.exe: warning: msvcrt.lib(loadcfg.obj): undefined symbol: __guard_longjmp_table
..\..\third_party\llvm-build\Release+Asserts\bin\lld-link.exe: warning: msvcrt.lib(loadcfg.obj): undefined symbol: __guard_longjmp_count
error: link failed
ninja: build stopped: subcommand failed.

 

Comment 1 by thakis@chromium.org, May 29 2017

Blocking: 82385
Cc: r...@chromium.org

Comment 2 by ruiu@google.com, Jun 5 2017

We currently define __guard_fids_table, __guard_fids_count and __guard_flags. I guess that VS2017 added a few new symbols.
Blocking: 683729

Comment 4 by ruiu@google.com, Jun 21 2017

I couldn't reproduce the issue; base.dll linked fine with the configuration. The only differences I could find were (a) mine is version 14.10.25019.0 and (b) mine is VS community edition.

Which VS edition are you using?

Comment 5 by r...@chromium.org, Jun 21 2017

I checked Rui's VS version here locally, and he wasn't using 2017. We'll try GYP_MSVS_VERSION=2017 next and see if that repros.

Comment 6 by tikuta@chromium.org, Jun 21 2017

When I built chrome's base, I used VS 2017 Update 3 Preview 1 that comes from depot_tools.
https://chromium.googlesource.com/chromium/src/+/4cbe11cc4d70466d33541036f188028879cff931/build/vs_toolchain.py#345

Comment 7 by ruiu@google.com, Jun 21 2017

Should be fixed in https://reviews.llvm.org/rL305876.

Comment 8 by r...@chromium.org, Jun 26 2017

Status: Fixed (was: Untriaged)
We don't have a bot that does VS2017+lld so we can't verify that it's fixed, but let's mark it fixed for now. We can reopen if it breaks on the next 2017 flip.

Sign in to add a comment