DrylandEcology / rSFSTEP2

R program that interfaces with the STEPWAT2 C code and runs in parallel for multiple sites, climate scenarios, disturbance regimes, and time periods
0 stars 1 forks source link

Document how to run rSFSTEP2 on Windows #148

Closed fdpierson closed 4 years ago

fdpierson commented 5 years ago

Instead of using Cygwin, which I personally had trouble with, I have been running rSFSTEP2 using the Windows Subsystem for Linux, which runs on Windows. I need to document how to get rSFSTEP2 running on WSL so that other researchers using Windows can run this program.

fdpierson commented 5 years ago

@kpalmqui Tagging you because Chandler wanted me to let you know that I was using Windows Subsystem for Linux, and wanted to know if that is alright with you. Let me know if you have any questions.

kpalmqui commented 5 years ago

@fdpierson I am fine with that as long as it is open source. Thanks for asking!

kpalmqui commented 5 years ago

@menglandjohns @fdpierson Freddy and Maggie - make sure to communicate with one another regarding this as Maggie will be the immediate and primary Windows user.

menglandjohns commented 5 years ago

@fdpierson @kpalmqui , thanks for letting me know. I've been running into trouble with Cygwin as well, so I'll look into that.

menglandjohns commented 5 years ago

Also, @fdpierson , which WSL exactly are you using? I expect they'll all work similarly enough, but just for consistency's sake.

fdpierson commented 5 years ago

@menglandjohns I've been using Ubuntu, and I also added an additional package repository so I could install R 3.6.0. I added deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/ to the end of the /etc/apt/sources.list file. I found this link helpful:

https://cran.r-project.org/bin/linux/ubuntu/README.html

fdpierson commented 5 years ago

@menglandjohns As for Cygwin, are you using the version of R for Cygwin or the version of R for Windows? Just the other day I managed to get rSFSTEP2 working with the version of R for Cygwin, and the trick was enabling the --no-staged-install flag whenever installing R packages, because otherwise, a "permission denied" error would result.

As for using the version of R for Windows, I have not figured that out yet.

Let me know if you have any further questions!

fdpierson commented 5 years ago

@kpalmqui Ubuntu is definitely open source, however I do not believe the Windows Subsystem for Linux is open source, although since it is a component of Windows itself, I am not sure if this matters.

kpalmqui commented 5 years ago

@fdpierson please document what you have discovered as soon as you can so we can continue to work on this issue. thanks much!

fdpierson commented 5 years ago

@kpalmqui @menglandjohns I have more specific notes on my computer at home, but running R on Cygwin requires installing Cygwin libraries (don't have the list right now) before R dependencies can be installed, as otherwise, compiler errors will result. Installing R dependencies, including rSOILWAT2, also requires enabling the --no-staged-install flag as otherwise R will complain about access permission errors.

fdpierson commented 5 years ago

@kpalmqui @menglandjohns Running R on Windows probably requires installing Rtools and Git for Windows as Git Bash is included, which is useful for Unix-specific commands like cp, rm, and mv, which are used in two scripts. R also needs to be added to the system path so it can be ran from Git Bash.

kpalmqui commented 5 years ago

@fdpierson it is not clear from these commits what the correct workflow is. Were you able to get rSFSTEP2 to complete with one of these approaches? I understood you were putting together a detailed document that explained all of the steps to run rSFSTEP2 on windows. Was I mistaken? Please provide greater detail here when you can.

With regards to

R also needs to be added to the system path

This indicates that we do in fact need to change the code, which is contrary to what you said in our last conversation. The file paths are automated via the python script. So we do need to set different file paths when running with Windows?

fdpierson commented 5 years ago

@kpalmqui Last night's comments are just notes. They are not the detailed document I was talking about. Also, I was able to get rSFSTEP2 to complete with the Cygwin approach.

Also, we do not necessarily need to change the code. When I talk about the system path, I am talking about the PATH environment variable in Windows, not a variable in our code as far as I know. I will look into this in the evening.

fdpierson commented 5 years ago

Creating the document as I type. I will open a branch for it and push to it in about an hour or two.

fdpierson commented 5 years ago

@kpalmqui @menglandjohns rSFSTEP2 documentation for Cygwin is in the Windows Compatibility branch! The file name is Windows.md. Go through it and let me know if anything needs added.

fdpierson commented 5 years ago

TODO: Handle line ending issues

fdpierson commented 5 years ago

TODO: Handle Python issues

kpalmqui commented 5 years ago

@fdpierson @menglandjohns thank you Freddy! We will review your new document and Maggie will step through the workflow on her windows machine and get back to you. Much appreciated.

menglandjohns commented 4 years ago

@kpalmqui @chaukap I was able to get the wrapper to run on one Windows machine using these instructions. Another machine ran into problems which I am still troubleshooting.

kpalmqui commented 4 years ago

@menglandjohns great! I think we can close this issue for now and we can always open up a new issue later if we need to make some small changes to the documentation.