-
Notifications
You must be signed in to change notification settings - Fork 30.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problem Building Node (had errors about multiply-defined symbols and such) #24448
Comments
Hello @DragonOsman and thank you for the report.
python configure --shared-zlib --with-pch --dest-cpu=x64 --verbose
^^^^^^^^^^^^^ |
Thanks for the reply. I'll try the second option. By the way, I forgot to mention earlier that I'm using Visual Studio 2017 (latest version). |
I have these warnings:
Do I need to worry? |
No, it's expected. I often see it while building locally. |
I got the same errors again:
How do I disable the other zlib installation? |
I had zlib installed in the C drive in a folder called "libraries". I completely deleted that folder and then tried to build Node again, but had the same errors as before. |
What I forgot to say is that if you build with set config_flags=--shared-zlib
vcbuild release x64 |
I even removed the vcpkg for zlib from my system and tried to build again with the commands you just gave. Got these errors at the end:
Any ideas? |
So it's either/or. If you removed the global zlib.dll you need to build the "in tree" version (i.e. "not share zlib"): set config_flags=
vcbuild release x64 If that doesn't work, try searching your whole computer for |
Got the same errors. So what do you mean by renaming them all? What should I rename them to? And what if I just delete them all? I wonder if you could help me with compiling a C++ webserver app I have to WebAssembly? I want to use it on the backend as a Node.js module. I can't get
I understand that when wanting to call I also tried asking about this in the emsdk GitHub. That's here (the two replies there is just me giving more info and updates) and here. I also asked something else two months ago about Note: The "same errors" I mentioned before are the same ones I was getting at first:
|
I got these errors again when I tried to build with shared-zlib flag:
How do I fix this error? |
I don't have Edit: Still got the same errors. I deleted the
|
I had errors about zlib1.dll again even though it doesn't even exist anymore. I searched in my C drive where all of the stuff should be, and it said it found no matches. What should I do? |
@refack I have node.lib and zlib.lib in my node installation. Has it already been built despite those errors, then? Or do I still need more .lib files than the ones I have (I see 21 .lib files)? And does building Node also build V8, or do I still need to build it? |
Building Node.js will build V8 as a prerequisite. |
Hi @DragonOsman did you make any progress, or have any new insights. |
I need advice on what to rename zlib1.dll into. I have lots of instances of it; some in vcpkg's files, some in Visual Studio 2017's files. If I try to set the |
I tried to run this command to try to build it this way:
But I keep getting this message:
even after I both installed WiX and added it to the PATH, and also installed a Visual Studio 2017 Extension for WiX. Do I put WiX as the first thing mentioned in the PATH, or is that not a problem? |
I think I'll just run the |
@nodejs/platform-windows ☝️ |
I have zlib dll instances in vcpkg and VS2017 installation directories, and I've also built zlib myself. I want to know if it's possible to just use the zlib I built myself with Node and just make Node ignore the one inside its source tree. Is this possible, and if so, how do I do it? I mainly just want V8, so I've also been trying to build it. Haven't had any luck. I'm using VS2017 and have tried to follow the instructions here: https://medium.com/dailyjs/how-to-build-v8-on-windows-and-not-go-mad-6347c69aacd4 because the ones on the main documentation for V8 also didn't really help. But I got errors when I ran the command mentioned there, I got this error message:
The command I ran was: When I try to follow the instructions on the official documentation, it tries to run the @Trott Why did you post that? Is there something for me to do there? |
I still need to try building it with the Release configuration, since I've only tried with the Debug one so far, but it seems choosing |
Update to above post: Turns out that although it worked with the Debug configuration, it didn't work with the Release configuration. I get "undefined symbol" errors because of zlib1.dll when I try to build node.vcxproj. I do have node.lib and zlib.lib in my Again, I'd like to know how I can make it ignore those |
Is there a way for me to provide the path to the zlib I built when trying to use shared-zlib? So that it doesn't look for z.lib (I have zlib.lib and zlibstatic.lib, and I built the latest version of zlib). Edit to add: I put in the path to the zlib include and lib directories in the project property pages, and also put in |
In the node.vcxproj linker command line, it has `C:/node/lib/Release/node.lib" as one of the linker input files. Why? I don't even see it under the linker input settings under "Linker" in Project Properties, so I don't know how to take it out of there. It's causing the project to fail to build. I asked on MSDN forums here, as well: link . Originally it was to ask about how to add library input files to the linker command line, but I decided to ask about this there, as well. |
@nodejs/build |
I tried specifying Anyway, I'd really like some help here. I already have this issue where I'm asking about this (in the Nodejs Help repo): nodejs/help#1656 |
I downloaded the source code for version 11.6.0 from the Nodejs website and tried to build it (directly using IDE GUI). Before running
And then I ran
Most of it builds successfully, but I have these linker errors when I try to build node.vcxproj:
What library am I missing? Could someone please help me out? Thanks in advance. |
There's been no further activity on this. Closing. Can reopen if necessary |
@DragonOsman I think you can do vcpkg integration remove, and then it should work, this works for me vcpkg integration remove |
I went into my Node root with the .git folder and ran
.\vcbuild
, and it built a lot of the stuff but then ended with the errors:I want to build Node and then V8. Any help would be greatly appreciated.
The text was updated successfully, but these errors were encountered: