Project

General

Profile

building on Visual Studio 2015

Added by peter ritter almost 8 years ago

Hi

Has anyone successfully built the new release candidate of Wt with Visual Studio 2015 ? Seems like my compiler/liker just hangs.

Peter


Replies (8)

RE: building on Visual Studio 2015 - Added by Trigve Siver almost 8 years ago

Yes I have. Took me about 20 minutes. Never had problem with hanging linker or compiler.

RE: building on Visual Studio 2015 - Added by Stephan Kaiser almost 8 years ago

We encountered this issue in debug builds for the final executable - the linker takes a long time (on high end laptops it may take an hour or so).

Release builds are fine, though, and we typically develop in Release + Symbols builds.

RE: building on Visual Studio 2015 - Added by peter ritter almost 8 years ago

Hi Stephan

Thanks for the input! Did you build the 64 bit version of Wt ?

Thanks, Peter

RE: building on Visual Studio 2015 - Added by Stephan Kaiser almost 8 years ago

Yes, 64 Bit only, with msvc2015 update1, and we compiled 3.3.5, 3.3.6rc, and latest git - always with the same effect - debug application link times hog the machine's cpu and memory for a long time.

As msvc2015 update3 is now available and according to their changelog seems to have fixed a lot of issues, we'll try that one soon.

We cannot use the native amd64 compiler toolchain (for an unrelated bug with IDL/COM), but perhaps that would be worth a try?

https://msdn.microsoft.com/en-us/library/x4d2c09s(v=vs.140).aspx

RE: building on Visual Studio 2015 - Added by peter ritter almost 8 years ago

Thanks Stephan

That's good feedback! I'm going to bother you with one more thing. We finally managed to compile with Visual Studio 2015 in 64 bit. We are using 'boost' also compiled with VS2015 64bit. But when we use the resulting Wt library in a new application, we get this error:

Error 1 error LNK1104: cannot open file 'libboost_date_time-vc120-mt-1_61.lib' E:\Work\TSAPI\tsapi_source_jun21_2016\source\ConsoleApplication1\ConsoleApplication1\LINK ConsoleApplication1

It's trying to link with the boost date_time library compiled with a previous version of visual studio. You didn't by chance encounter anything like that?

Many thanks, Peter

RE: building on Visual Studio 2015 - Added by Wim Dumon almost 8 years ago

Hey Peter,

That's very bizar. boost automatically detects what libraries it should link to, and then annotates this in the object files through some pragma, so that the linker links against the proper library. The only possibility I see is that either an object file was compiled with an old version of msvs, or that this library has been explicitly mentioned on the linker's command line.

Also note that msvs version numbers may be misleading; the compiler version is not the same as the commercial version, which may also explain the differnce between 12 and 15 (but I can't tell this from the top of my head now, I also don't remember exactly what is used in boost's file names).

Wim.

RE: building on Visual Studio 2015 - Added by Stephan Kaiser almost 8 years ago

No, we did not encounter that issue. We also compile with boost 1.61.0.

Wim's observation is right, the "vc120" in the lib name is wrong, it should be "vc140" for vs2015 (vs2013="vc120", vs2012="vc110" ...).

The version numbers can be a bit misleading and are a constant source of confusion:

https://www.reddit.com/r/cpp/comments/4r8n41/what_are_some_reasons_why_visual_studio_seems_so/d4zolll

RE: building on Visual Studio 2015 - Added by yvan vander sanden almost 8 years ago

I also had this problem about boost using the vc120 version. In my case I was working with VS2013 before, and switched to VS2015 now that it is supported by WT. As far as I know, VS asks to convert a solution when you open a VS2013 project in VS2015. But in this case it did not. After right clicking on the project and selecting upgrade project from the menu, the right boost library (vc140) was used.

yvan

    (1-8/8)