-
Notifications
You must be signed in to change notification settings - Fork 70
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
Can't install MXNet on windows #257
Comments
Did you install the pre-built libmxnet somewhere? It seems the package cannot find the backend. |
What is the output of |
Am away from pc for now but the error was with opening the dll. The file exists in the location expected after manually checking it but Libdl.find_library fails to find the library that it just downloaded. |
I can not seem to run
Edit: found solution in #263 |
ERROR: LoadError: LoadError: Cannot find or load libmxnet.so. Please see the document on how to build it.
Stacktrace:
[1] error(::String) at .\error.jl:21
[2] include_from_node1(::String) at .\loading.jl:569
[3] include(::String) at .\sysimg.jl:14
[4] include_from_node1(::String) at .\loading.jl:569
[5] include(::String) at .\sysimg.jl:14
[6] anonymous at .\<missing>:2
while loading C:\Users\micha\.julia\v0.6\MXNet\src\base.jl, in expression starting on line 26
while loading C:\Users\micha\.julia\v0.6\MXNet\src\MXNet.jl, in expression starting on line 24
ERROR: Failed to precompile MXNet to C:\Users\micha\.julia\lib\v0.6\MXNet.ji.
Stacktrace:
[1] compilecache(::String) at .\loading.jl:703
[2] _require(::Symbol) at .\loading.jl:490
[3] require(::Symbol) at .\loading.jl:398 is the output when trying to run julia> Pkg.build("MXNet")
INFO: Building MXNet
INFO: Found a CUDA installation.
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
WARNING: Compat.UTF8String is deprecated, use String instead.
likely near C:\Users\micha\.julia\v0.6\MXNet\deps\build.jl:58
INFO: Downloading pre-built packages for Windows. |
Can you post the output of `Pkg.build("MXNet")`?
…On Fri, 28 Jul 2017, 15:12 Michael Wallace Louwrens, < ***@***.***> wrote:
ERROR: LoadError: LoadError: Cannot find or load libmxnet.so. Please see the document on how to build it.
Stacktrace:
[1] error(::String) at .\error.jl:21
[2] include_from_node1(::String) at .\loading.jl:569
[3] include(::String) at .\sysimg.jl:14
[4] include_from_node1(::String) at .\loading.jl:569
[5] include(::String) at .\sysimg.jl:14
[6] anonymous at .\<missing>:2while loading C:\Users\micha\.julia\v0.6\MXNet\src\base.jl, in expression starting on line 26while loading C:\Users\micha\.julia\v0.6\MXNet\src\MXNet.jl, in expression starting on line 24
ERROR: Failed to precompile MXNet to C:\Users\micha\.julia\lib\v0.6\MXNet.ji.
Stacktrace:
[1] compilecache(::String) at .\loading.jl:703
[2] _require(::Symbol) at .\loading.jl:490
[3] require(::Symbol) at .\loading.jl:398
is the output when trying to run using MXNet
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#257 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAI3astia4GspQD9yFOaPMRV12l8HjeKks5sSd4vgaJpZM4N6gli>
.
|
It's there, I added it as an edit.
|
Hmm... the downloading failed? Anything under the |
all the files you would expect! |
OMG, I installed a Windows VM and I can reproduce this issue.... |
ha, I got it. |
Then, just |
😠 unfortunately this looks like it is going to be a problem with CUDA. CUDA requires that you already have vc14 installed. So when trying to install the redist it errors and the log file tells me nicely |
I'm going to try compiling |
Is there a way to list the dependencies of a DLL on windows? Could you check that on your |
Is this still an issue? |
Yes, I have exactly the same problem even after removing my vc14 redistributable runtime and reinstalling using @iamed2 's link. |
@ylxdzsw which version of MXNet.jl? |
Both I tried
I don't know what |
Here is mine from a windows VM ( without CUDA)
Is there |
I have a Well, there is yet another one in |
Will this throw an error on your machine? julia> Libdl.dlopen(Pkg.dir("MXNet", "deps", "usr", "lib", "vcomp140.dll")) Also, you can poke other |
e.g. here is mine julia> Libdl.dlopen(Pkg.dir("MXNet", "deps", "usr", "lib", "vcomp140.dll"))
Ptr{Void} @0x000007fef7800000
julia> Libdl.dlopen(Pkg.dir("MXNet", "deps", "usr", "lib", "libgfortran-3.dll"))
Ptr{Void} @0x0000000016120000 |
Well, unfortunately, it seems that Julia can find all of them:
|
and.... what happened for |
My problem was solved by installing CUDA 8.0 😂. My previous installation is CUDA 9.0 since CUDA 8.0 reports that I'm using a newer hardware than the bundled driver. After install CUDA 8.0, it works well. This is correct
|
🎉 I will add that note on release page. |
I also think CUDA 9.0 is on master only. |
I think we can check the CUDA version here since we call Finally, thanks! |
what does the output of |
Now it's
It may be changed in CUDA 9.0, but anyway there won't be |
ok, seems its output format is same as Linux. |
Julia V0.62 on Windows 10, after running "Pkg.add("MXNet")" in the console, I get the following errors. Is there another step necessary (e.g. to copy libmxnet.dll from .julia\v0.6\MXNet\deps\usr\build to somewhere?) julia> using MXNet |
julia> Libdl.dlopen(Pkg.dir("MXNet", "deps", "usr", "lib", "opencv_ffmpeg320_64.dll")) julia> Libdl.dlopen(Pkg.dir("MXNet", "deps", "usr", "lib", "libmxnet.dll")) Since libmxnet.dll is present in the directory, that means the DLL is corrupted or...? |
or there are some dependencies missing. |
please check the dependencies like this: #257 (comment) |
Attached the output of Dependency Checker on libmxnet.dll (a lot of these warnings are likely spurious) |
What's your cuda version? |
Using the latest CUDA version (9.1) |
MXNet.jl v0.3 only works with CUDA 8.0, and CUDA 9 or later need master build. |
I'm currently building from latest versions of OpenBLAS (https://sourceforge.net/projects/openblas/files/v0.2.20/), OpenCV (pre-built WinPack, VC15, https://github.com/opencv/opencv/releases/tag/3.4.0) and CUDA/CUDnn (9.1) |
Running cmake -G "Visual Studio 15 2017" in a newly added build folder under C:\MXNet produces the following in CMakeError.log (under build\CMakeFiles folder), which looks to be attempting a 32-bit rather than a 64-bit compilation of CUDA 9.1? C:\MXNet\build\CMakeFiles\3.10.2\CompilerIdCUDA>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\bin\nvcc.exe" -gencode=arch=compute_30,code="sm_30,compute_30" --use-local-env --cl-version 2017 -ccbin "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\bin\HostX64\x86" -x cu -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\include" -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\include" -G --keep-dir Debug -maxrregcount=0 --machine 32 --compile -cudart static -g -D_MBCS -Xcompiler "/EHsc /W0 /nologo /Od /FS /Zi /RTC1 /MDd " -o Debug\CMakeCUDACompilerId.cu.obj "C:\MXNet\build\CMakeFiles\3.10.2\CompilerIdCUDA\CMakeCUDACompilerId.cu" |
I'm not a Windows master, but I think there is a flag By the way, if your are okay with prebuilt binary, here it is. https://github.com/yajiedesign/mxnet/releases |
I'm likely still struggling to figure out where to make setting changes. Is it in the cmake command? in the CMakeLists.txt file (I only changed there 2 lines to reference CUDA version 9.1 since the original file didn't): set(__cuda_toolset "7.5" "8.0" "9.0") Perhaps I should only change CMakeCache.txt in the build folder? I'm not ready to give up just yet on compilation of MXNet from source since all the dependent components (OpenBLAS, OpenCV, CUDA) are the latest and seem to compile just fine. Let MXNet not be the obstacle to success... I feel like I'm close. Attaching here the relevant files. CMakeLists.txt |
From your post,
Is your VC 32-bit or 64-bit version? |
This is interesting. Visual Studio is installed under Program Files (x86), has 2 folders Hostx64 and Hostx86 under Tools. Under Hostx64 there are two folders x64 and x86 so it looks like the x64 should be used but instead x86 is used. What setting controls that selection? |
I just googled a bit, perhaps this can help: |
|
Progress! Now the 64-bit VC compiler is selected, but no CUDA_COMPILER defined. C:\MXNet\build>cmake -G "Visual Studio 15 2017" -DCMAKE_GENERATOR_PLATFORM=x64 .. |
set CUDA 9.1 in your |
|
looks legit 🤔 |
Oh, have you tried to remove all cmake generated file then run again, like |
Yes, deleted CMakeCache.txt and the CMakeFiles folder (both under build folder) before re-running cmake. Noticed that CMakeCache.txt has these 2 lines:
CMakeError.log (attached) has 2 errors which point to a problem with host compiler compatibility.
while I'm using the Visual Studio Community Edition 2017 version 15.5.4 (latest) Looks like the compatibility problem is discussed in this thread: https://devtalk.nvidia.com/default/topic/1022648/cuda-9-unsupported-visual-studio-version-error/ |
Can't get any version to run after the GPU release. Files are in the correct position so no idea what is going on!
The text was updated successfully, but these errors were encountered: