Skip to content
This repository has been archived by the owner on Mar 25, 2018. It is now read-only.

Build failures on Windows with 5.7-lkgr #4

Closed
targos opened this issue Feb 19, 2017 · 7 comments
Closed

Build failures on Windows with 5.7-lkgr #4

targos opened this issue Feb 19, 2017 · 7 comments

Comments

@targos
Copy link
Member

targos commented Feb 19, 2017

CI run: https://ci.nodejs.org/job/node-compile-windows/7129/

Errors:

     Creating library c:\workspace\node-compile-windows\label\win-vs2015\Release\mksnapshot.lib and object c:\workspace\node-compile-windows\label\win-vs2015\Release\mksnapshot.exp
v8_base_1.lib(parser.obj) : error LNK2001: unresolved external symbol "public: static struct v8::internal::Runtime::Function const * __cdecl v8::internal::Runtime::FunctionForId(enum v8::internal::Runtime::FunctionId)" (?FunctionForId@Runtime@internal@v8@@SAPEBUFunction@123@W4FunctionId@123@@Z) [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\mksnapshot.vcxproj]
v8_base_1.lib(parser.obj) : error LNK2001: unresolved external symbol "public: static struct v8::internal::Runtime::Function const * __cdecl v8::internal::Runtime::FunctionForName(unsigned char const *,int)" (?FunctionForName@Runtime@internal@v8@@SAPEBUFunction@123@PEBEH@Z) [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\mksnapshot.vcxproj]
v8_base_3.lib(assembler.obj) : error LNK2001: unresolved external symbol "public: static struct v8::internal::Runtime::Function const * __cdecl v8::internal::Runtime::RuntimeFunctionTable(class v8::internal::Isolate *)" (?RuntimeFunctionTable@Runtime@internal@v8@@SAPEBUFunction@123@PEAVIsolate@23@@Z) [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\mksnapshot.vcxproj]
v8_base_3.lib(assembler.obj) : error LNK2001: unresolved external symbol "public: static struct v8::internal::Runtime::Function const * __cdecl v8::internal::Runtime::FunctionForEntry(unsigned char *)" (?FunctionForEntry@Runtime@internal@v8@@SAPEBUFunction@123@PEAE@Z) [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\mksnapshot.vcxproj]
v8_base_0.lib(js-operator.obj) : error LNK2001: unresolved external symbol "class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl v8::internal::operator<<(class std::basic_ostream<char,struct std::char_traits<char> > &,enum v8::internal::Runtime::FunctionId)" (??6internal@v8@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@std@@AEAV23@W4FunctionId@Runtime@01@@Z) [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\mksnapshot.vcxproj]
c:\workspace\node-compile-windows\label\win-vs2015\Release\mksnapshot.exe : fatal error LNK1120: 5 unresolved externals [c:\workspace\node-compile-windows\label\win-vs2015\deps\v8\src\mksnapshot.vcxproj]

/cc @nodejs/v8

@targos
Copy link
Member Author

targos commented Mar 8, 2017

Confirmed in a new run: https://ci.nodejs.org/job/node-compile-windows/7432/
/cc @nodejs/platform-windows

@targos
Copy link
Member Author

targos commented Mar 21, 2017

@joaocgreis FYI this issue is fixed in V8 master. I don't know what commit fixed it.

@targos
Copy link
Member Author

targos commented Mar 23, 2017

The error disappears with this commit: v8@3297130.

@targos
Copy link
Member Author

targos commented Mar 23, 2017

@targos targos closed this as completed Mar 23, 2017
targos added a commit to targos/node that referenced this issue Mar 25, 2017
This fixes a build failure on Windows.

Original commit message:

    Rename TypeFeedbackVector to FeedbackVector.

    ... and TypeFeedbackMetadata to FeedbackMetadata.

    BUG=

    Change-Id: I2556d1c2a8f37b8cf3d532cc98d973b6dc7e9e6c
    Reviewed-on: https://chromium-review.googlesource.com/439244
    Commit-Queue: Igor Sheludko <ishell@chromium.org>
    Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
    Reviewed-by: Michael Stanton <mvstanton@chromium.org>
    Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Reviewed-by: Hannes Payer <hpayer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{nodejs#42999}

Refs: nodejs/v8#4
PR-URL: nodejs#11752
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
@joaocgreis
Copy link
Member

This was fixed for x64, but possibly never tested on x86. Now, x86 builds are failing (nodejs/build#669), the V8 update seems to be the root cause (still unconfirmed but the timing matches). The console output is similar:

     Creating library c:\ws\Release\mksnapshot.lib and object c:\ws\Release\mksnapshot.exp
v8_base_0.lib(parser.obj) : error LNK2001: unresolved external symbol "public: static struct v8::internal::Runtime::Function const * __cdecl v8::internal::Runtime::FunctionForId(enum v8::internal::Runtime::FunctionId)" (?FunctionForId@Runtime@internal@v8@@SAPBUFunction@123@W4FunctionId@123@@Z) [c:\ws\deps\v8\src\mksnapshot.vcxproj]
v8_base_0.lib(parser.obj) : error LNK2001: unresolved external symbol "public: static struct v8::internal::Runtime::Function const * __cdecl v8::internal::Runtime::FunctionForName(unsigned char const *,int)" (?FunctionForName@Runtime@internal@v8@@SAPBUFunction@123@PBEH@Z) [c:\ws\deps\v8\src\mksnapshot.vcxproj]
v8_base_3.lib(assembler.obj) : error LNK2001: unresolved external symbol "public: static struct v8::internal::Runtime::Function const * __cdecl v8::internal::Runtime::RuntimeFunctionTable(class v8::internal::Isolate *)" (?RuntimeFunctionTable@Runtime@internal@v8@@SAPBUFunction@123@PAVIsolate@23@@Z) [c:\ws\deps\v8\src\mksnapshot.vcxproj]
v8_base_3.lib(assembler.obj) : error LNK2001: unresolved external symbol "public: static struct v8::internal::Runtime::Function const * __cdecl v8::internal::Runtime::FunctionForEntry(unsigned char *)" (?FunctionForEntry@Runtime@internal@v8@@SAPBUFunction@123@PAE@Z) [c:\ws\deps\v8\src\mksnapshot.vcxproj]
v8_base_0.lib(js-operator.obj) : error LNK2001: unresolved external symbol "class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl v8::internal::operator<<(class std::basic_ostream<char,struct std::char_traits<char> > &,enum v8::internal::Runtime::FunctionId)" (??6internal@v8@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@AAV23@W4FunctionId@Runtime@01@@Z) [c:\ws\deps\v8\src\mksnapshot.vcxproj]
c:\ws\Release\mksnapshot.exe : fatal error LNK1120: 5 unresolved externals [c:\ws\deps\v8\src\mksnapshot.vcxproj]

@joaocgreis
Copy link
Member

The same commit that fixes this for x64 breaks for x86. I was able to confirm that this is because the change of position in v8.gyp, moving those 3 lines to the old position fixes this issue for x86.

joaocgreis added a commit to JaneaSystems/node that referenced this issue Apr 10, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
joaocgreis added a commit to nodejs/node that referenced this issue Apr 11, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Apr 11, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Apr 12, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Apr 13, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Apr 24, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
evanlucas pushed a commit to nodejs/node that referenced this issue Apr 25, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Apr 26, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Apr 27, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Apr 28, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 17, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 18, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 19, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 20, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 21, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 22, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 23, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Jun 23, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 23, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 24, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 25, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 26, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Jun 26, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node-v8 that referenced this issue Jun 26, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 26, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Jun 27, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 27, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 27, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
targos pushed a commit to nodejs/node that referenced this issue Jun 28, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: #12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 28, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
joaocgreis pushed a commit to JaneaSystems/node that referenced this issue Jun 28, 2017
Building on Windows fails depending on the result from sharding the
deps/v8/src/v8.gyp:v8_base target. If two source files with the same
name are in the same shard, their output object file path would
conflict with one another. One example of this conflict is v8_base's
runtime/runtime.cc and the V8 inspector's protocol/Runtime.cpp that
is generated at build time, for which the files runtime.obj and
Runtime.obj would be created, but msvs overwrites one of them with
the other.

Dividing the .obj output path by the original source's extension
prevents this overwrite.

Fixes: nodejs/v8#4
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 29, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
nodejs-ci pushed a commit to nodejs/node-v8 that referenced this issue Jun 30, 2017
Increase the number of shards to divide v8_base into. This increases
the number of calls to cl.exe but decreases the number of files
compiled each time.

Fixes: nodejs/v8#4
PR-URL: nodejs/node#12184
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
@jaimecbernardo
Copy link

A fix for this issue landed on V8 upstream.
Original PR: nodejs/node#13959
V8's Code Review: https://chromium-review.googlesource.com/c/556599/
V8's Commit: https://chromium.googlesource.com/v8/v8/+/3bef2af6ef198b0cd1342680bf5d7d782dc71a46

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants