Hello. I’m visionNoob.
I think many people are struggling with building MxNet on win10, including me.
Finally, I (partially) succeed in building MxNet on win10.
Environment
Windows 10 Education
Visual Studio 2015
python 3.6(7.5.0)
Nvidia CUDA 9.0(V9.0.176)
Intel® MKL 2019(V2019.4.245)
OpenCV 4.1.0(released in 2019-04-08)
contents
1. MxNet
I cloned MxNet source from https://github.com/Vigilans/incubator-mxnet/tree/patch-1 (not merged yet)
see PR #15144
this branch handle several issues( #14116, #15143) that make failure in generated op.h.
2. Visual Studio 2015(vc14)
I think CUDA Visual Studio Integration is also needed for stable building for cuda.
And update 3 also needed.
3. OpenCV
I use “OpenCV 4.1.0 official release version” not build from source. I tried to use OpenCV that builds myself with extra-modules but with this, fail to build mxnet. I don’t know why.
4. Cmake version
I use latest version of Cmake, 3.15.0. it’s fine.
5. Cmake configuration
my configuation is below
you have to set some paths and disable/enable some options.
please refer from the screen shots below.
screenshots here (https://github.com/visionNoob/incubator-mxnet/issues/1)
6. In my case, I generated “op.h” manually .
it’s very simple
OpWrapperGenerator.py
generate “op.h” in “…\incubator-mxnet\cpp-package\include\mxnet-cpp\op.h”
The location of OpWrapperGenerator.py is
…\incubator-mxnet\cpp-package\scripts\OpWrapperGenerator.py
go to the directory and
python OpWrapperGenerator.py "\your\build\Release\libmxnet.dll"
then “op.h” is generated in “…\incubator-mxnet\cpp-package\include\mxnet-cpp\op.h”
If you see this sentences(below) during generation, You fail to generate “op.h”.
I say it again. I downloaded mxnet source from Vigilans’s . and it maybe solve your problems.
1>argument "lrs" of operator "multi_sgd_update" has unknown type ", required"
1>argument "wds" of operator "multi_sgd_update" has unknown type ", required"
1>argument "lrs" of operator "multi_sgd_mom_update" has unknown type ", required"
1>argument "wds" of operator "multi_sgd_mom_update" has unknown type ", required"
1>argument "lrs" of operator "multi_mp_sgd_update" has unknown type ", required"
1>argument "wds" of operator "multi_mp_sgd_update" has unknown type ", required"
1>argument "lrs" of operator "multi_mp_sgd_mom_update" has unknown type ", required"
1>argument "wds" of operator "multi_mp_sgd_mom_update" has unknown type ", required"