The compiler will build forever. I tried Debug and Release.
Has someone managed to build it successfully with VS 2017?
after a few tests, reducing the sample to:
int main(int argc, char** argv)
{
anet_type net;
}
is enough to hang the compiler
Yes, VC2017 is broken. VC2015 will work. Or any compiler that supports
C++11.
Is there a specific bug # for VC 2017 I can follow for this problem? or any workaround?
It's because visual studio doesn't support key C++11 features, in
particular expression SFINAE. I've tried to find a workaround but
expression SFINAE is such a fundamental feature it's hard to do. So far no
one has found a reasonable workaround.
ok, thanks
btw, would the Intel compiler work?
I think pretty much all other compiles support C++11 now, so yes. Visual
Studio is the only compiler I'm aware of that doesn't have good C++11
support at this point. However, if you want to use CUDA on windows then
the only option is visual studio unfortunately.
I confirm, the Intel compiler works.
@thomasd3
Does this include the nvcc / CUDA part? I read that CUDA 8.0 does support Intel C++ 16.0 and 15.04 but it doesn't mention if that's just Linux
@davisking
vs2017 is broken , would you like to add binary files for windows into release ?
thanks!
@goodtogood What's what going to do and how would it be accomplished?
what I mean is adding compiled dlls / libs / examples for windows into released zip.
I tried to compile dlib on windows some times ending up with failure.
cuz I have vs2013 and vs2017 installed except vs2015,
and It's kinda inconvenient to install a new vs2015,
I thought there should be a lot people like me.
It's really appreciate that you can release the code with dlls / libs / examples for windows .
That's not how C++ works. There is no way to make it work in VC2017. dlls have nothing to do with it and are not a possible solution.
Has anyone tried VS2017 15.5 that had promised to fix these issues?
I have win 10x64, vs2015upd3, cuda 8, cudnn5.1 and latest dlib.
I tryed to compile some examples with hard templates like segmentation example, but cannot. Ive tryed everything possible (flags mp zm etc vs, different versions of vs and cuda) and it doesnt work.
But yesterday I found solution! It,s intel compiler x18 (may be others works too). I run it under vs2015 and my example with template magically compiled and works with cuda!!!
May be u found this useful.
That's great news. As I was already giving up on the hope to be able ever to train anything on Windows and either do all the training as I do now on Linux or eventually move to CNTK
Supposedly visual studio will support expression SFINAE soon (the missing/buggy C++11 feature that causes us these problems). So it might not be too long. Although they have been saying "soon now" for awhile.
@xsacha I tryed use VS2017 15.5 compile锛宼he same problem happened,the compiler will build forever.
Well then 2017 will probably be a write-off. Here's hoping for 2019.
Someone discovered that disabling inlining of recursive functions in visual studio 2015 significantly improves the RAM usage and build times of the DNN examples. I pushed this change to github last night. So at least you can compile all the DNN examples with visual studio 2015 in reasonable time. VC2017 still has additional C++11 bugs that prevent it from working though.
My partner told me that the last update of VS compiles properly the templates for the DNN. I haven't verified myself.
VS2017?
Is that the 15.6 preview or 15.5 stable?
I think both said they fixed the issue in release notes but someone commented that 15.5 preview didn't work.
It's with 15.5.1
Sweet. I just tried it with the newest version of VS2017 and they all work now. Also, if you give -T host=x64 to cmake when generating the project it will use the 64bit toolchain. That allowed me to compile the examples that would otherwise cause VS to run out of RAM and crash.
So at this point it looks like the newest VS2017 works correctly for everything!
Most helpful comment
I have win 10x64, vs2015upd3, cuda 8, cudnn5.1 and latest dlib.
I tryed to compile some examples with hard templates like segmentation example, but cannot. Ive tryed everything possible (flags mp zm etc vs, different versions of vs and cuda) and it doesnt work.
But yesterday I found solution! It,s intel compiler x18 (may be others works too). I run it under vs2015 and my example with template magically compiled and works with cuda!!!
May be u found this useful.