-
Notifications
You must be signed in to change notification settings - Fork 133
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
Windows installation instructions #600
Comments
@gau27 @preetpalS @ThRabbit Are any of you all able to help with this? |
@remcopeereboom How are you using Ruby (CRuby) on Windows. If you're not using oneclick/rubyinstaller2, you should look into it. That packaged ruby installer installs ruby alongside msys2 (which is reliable; the official Git build on Windows uses it I believe) which includes the Arch Linux package manager pacman which allows you to easily install almost all Linux software on Windows including lapack and openblas. For example to install lapack and openblas on Windows, using pacman use the following commands (assuming you are using the 64-bit version of Ruby): pacman -S mingw-w64-x86_64-openblas mingw-w64-x86_64-lapack Afterwards you technically are supposed to be able install nmatrix-lapacke normally on Windows like you would with other gems but this is not the case today as you will run into the linking errors on Windows (or at least I did with Ruby 2.4.1p111 (2017-03-22 revision 58053)). I'll most likely look into this issue further but I cannot make any promises (either timelines or actually being able to fix the actual issues). Note that the nmatrix gem (version 0.2.3) installs on Windows and works fine. Also you might want to look into the native Linux layer on Windows (I forget what it's called but it allows you to run Ubuntu binaries directly on Windows; it also includes the Ubuntu package manager so you can install everything like you would on Ubuntu). |
@preetpalS Thanks for the reply. I'm using MRI with the oneclick installer. At the time my first issue was finding out what
|
But are using rubyinstaller2? I am using one of the releases from Github. It should have setup the path for you, so you shouldn't be running into that particular issue. When I attempted the installation, I ran into a different set of errors (linking errors). |
@remcopeereboom Basically to simplify things, during the installation of the gem on your computer, your Ruby installation's compiler toolchain cannot find lapack. If you installed Ruby with rubyinstaller2, and installed lapack with pacman, you should not have run into that particular issue. Although, even if you didn't run into that issue, chances are (based on what happened when I tried to install the nmatrix-lapacke gem) that you still would not be able to install the gem because of other issues. @MohawkJohn, @v0dro I have attached the compilation error log files from the attempted gem installation on Windows 10 to this issue. If you have any insight into how to resolve these issues that would be helpful in moving forward. |
Thanks again for taking the time to respond to this issue. Yes, as I mentioned, I am using rubyinstaller2, and I did install lapack with pacman from the msys2 installed by the ruby installer, nevertheless, I still got the error shown when gem installing. |
I looked more into the issue. The first issue that should be resolved in the gem installation process (on my computer where Lapack is found by the toolchain) on Windows is why the following error happens:
From my understanding nmatrix/ext/nmatrix/data/data.cpp Line 198 in 7f3fa5d
This would mean that the compilation process for the nmatrix-lapacke gem on Windows (using RubyInstaller2) is running into issues not even related to lapack. Maybe one of the developers from RubyInstaller2 would know how to fix this. @larskanis |
The current mechanism for loading nmatrix plugins works, because some symbols (like Unfortunately this doesn't work on Windows, because unresolved symbols are not allowed there and can not be resolved at runtime. There are two ways to overcome this issue:
|
The documentation does not have any installation instructions for windows. It would be nice if there were a guide that walked users through getting
matrix-lapacke
andmatrix-atlas
to run. The GNU toolchain on Windows is something of a nightmare if you are not used to Linux commands and the installation Windows instructions on the Lapack and OpenBLAS websites are difficult and horribly outdated.Also, is there a way to dynamically bind to the libraries (e.g. through ffi) or do we need to build statically. Dynamic bindings would be easier because pre-compiled binaries are available (obviously not optimized for a users system, but a nice no-need-to-think-just-install fall-back).
The text was updated successfully, but these errors were encountered: