-
Notifications
You must be signed in to change notification settings - Fork 706
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
binary is incompatible after update of VisualStudio 2017 #157
Comments
Ugh. Apparently
So I'll have to disable LTCG and rebuild pugixml to avoid version conflicts (if I just rebuild with the latest VS2017 that will presumably break compatibility with 15.0). |
@igagis I've uploaded new package version 1.8.4; it still works with VS2017 15.0 - can you check if it fixes the build with 15.3? |
Unfortunately, still does not work: https://ci.appveyor.com/project/igagis/svgren/build/master-396 |
The build you linked is still using 1.8.3:
You'll have to switch to 1.8.4 in edit wait, never mind - it is using 1.8.4. Hmm... |
Nope, it does |
This is interesting... Do you know if AppVeyor "Visual Studio 2017" got updated to 15.3 or are you using some special setup for this? It's odd since I'm building NuGet package with "Visual Studio 2017" image so I would think that if the issue was with 15.3 then the new build would have resolved the problem regardless of whether my project file change helped... |
I think it was updated to 15.3 a day ago or so, I started getting these errors without relevant changes, so I think it is because it was updated. I also updated VS on my PC and those errors also appeared when building on my machine. |
Maybe I also need to turn off optimizations in my project files... |
I think the issue might be that pugixml VS2017 build is not built properly - maybe it's built using VS2015, at least I'm seeing a path to Visual Studio 14.0 CL.exe in the resulting .lib file for some reason. I'll have to investigate this a bit more. |
Ah ugh nuget_build.ps1 has a typo :( so yeah the "VS2017" build is actually VS2015 build that still has LTCG enabled. |
Ah, I see, let's hope it will fix it :) |
and most likely it is not LTCG is guilty but that it is built with v140 tools instead of v141 |
Yeah I'm trying to rebuild with LTCG enabled but with correct toolset this time. |
Yeah, nah, here's what I get with LTCG enabled, VS2017 15.3 (AppVeyor) used to compile pugixml.lib, and VS2017 15.0 (local machine) used to link against it:
|
The other strange thing actually is how was it working before if it was built with v140 tools, while I was using v141 in my projects... |
My guess is that 15.0 used the same IL format as VS2015, but 15.3 bumped it which started causing these mismatches. The fact that this makes LTCG binaries incompatible between 15.0 and 15.3 is pretty annoying. I've uploaded package 1.8.5 which should hopefully resolve this (has LTCG disabled and is actually using VS2017...). |
Now it works! Thank you for help! |
Due to a typo in build script v141 binaries were built using VS2015 instead of VS2017. Fixes #157.
After update of Visual Studio 2017 from version 15.0 to 15.3 I started getting the following errors:
you can find the build log of my project here https://ci.appveyor.com/project/igagis/svgren/build/master-395
Looks like the
pugixml
nuget package has to be rebuild with latest VS2017.The text was updated successfully, but these errors were encountered: