jgrss / geowombat

GeoWombat: Utilities for geospatial data
https://geowombat.readthedocs.io
MIT License
182 stars 10 forks source link

Failed to Install Geowombat on pip and conda #279

Closed ShabaniMagawila closed 9 months ago

ShabaniMagawila commented 1 year ago

Hello folks, I having the problem to Install Geowombat by using both pip and anaconda. I got some errors, and I post them here below. Please anyone to assist me the whole process.

  1. Using Jupyter Lab with Pip command I use this command to install: 'pip install geowombat image I use this code: 'pip install git+https://github.com/jgrss/geowombat' image

  2. Installing using Anaconda Prompt: Jupyter Notebook I use this code: 'conda install geowombat' image

ShabaniMagawila commented 1 year ago

image With conda

mmann1123 commented 1 year ago

1) for pip you will need to set up a virtual environment with 3.8<=py<=3.10. 3.11 is not supported yet.

2) conda takes a long time to solve environments, but it should work. Make sure you set up a conda env with the desired python version

conda create -gw_env python=3.10 geowombat -c conda-forge conda activate gw_env python

jgrss commented 1 year ago

@ShabaniMagawila following on @mmann1123's answer, if you do not want to use conda, pyenv is a good option. With pyenv, you could install a specific version of Python and then install geowombat inside that environment.

List available Python versions

pyenv install --list

Install Python 3.10

pyenv install 3.10.12

Create a virtual environment with Python 3.10 (venv.gw is the new environment name)

pyenv virtualenv 3.10.12 venv.gw

Activate the virtual environment

pyenv activate venv.gw

Install geowombat

(venv.gw) pip install git+https://github.com/jgrss/geowombat

Exit the virtual environment

pyenv deactivate
twnawrocki commented 9 months ago

Even using Python 3.10.12 in a fresh Miniconda installation on Windows 11, conda cannot solve the environment for geowombat.

conda create -n gw_env python=3.10 geowombat -c conda-forge

Attempting the process with python 3.8 or 3.9 fails as well. Dependencies (rasterio, rioxarray, etc.) do not encounter any issues. I believe there is a legitimate issue here that is not related to using a python version that is not yet supported.

The issue is specific to the classic solver in conda. The environment can be solved successfully by the libmamba solver. Additionally, installing by pip in a 3.10.12 installation succeeds.

mmann1123 commented 9 months ago

huh... that is surprising given the it passes all the build tests here. Good to know. I will try to take a look at it on my work computer. But be patient with us. We are just 2 guys doing this in our free time.

twnawrocki commented 9 months ago

@mmann1123 Absolutely. I intended my above post only as an FYI; the issue may not be worth looking into given functioning alternatives. The situation may also be indicative of a problem or bug in the classic solver. Regardless, I greatly appreciate the work that you and @jgrss are doing!

@ShabaniMagawila and others who may encounter a problem when trying to install geowombat through conda, I suggest the switching to the libmamba solver.

conda update -n base conda
conda install -n base conda-libmamba-solver
conda config --set solver libmamba

conda create -n gw_env python=3.10 geowombat
ShabaniMagawila commented 9 months ago

Hello friends, Thanks for your help, in one way or another you direct me into the solution to my problem above. I like to inform you that your options made me to solve the problem. My sincere thanks reach out to you folks, I would like also to share how I managed to solve this problem. Thanks

image

ShabaniMagawila commented 9 months ago

Step 1: Install Anaconda Make sure to install Anaconda to the directory that doesnt have a space in between, see below image, the user "Shabani Magawila" has space in between. So avoid that. image

You can managed this by either install Anaconda to other Directory like in local disk "C:/ProgramData" or by create a new Window user with no space in between, like below image. image

Step 2: Create Python Environment with appropriate specificification Remember geowombat works with Pythom 3.10, so you have to create environment with python==3.10, for me I created environment called "spatial". image with python version 3.10.12 image

Step 3: Add "conda-forge" channel to the conda environment First, make sure to activate your environment as base env. Then add conda-forge with below command, see more image See below, I have 3 channels added into my environment. image

Step 4: Install packages through conda-forge (e.g: GDAL) Before to install any package in the conda-forge, make sure to set "conda-forge" as default channel by bring it on top of others, use this command below. See more image

Then install "GDAL" by using conda-forge command image

Step 5: Install Geowombat Finally, use pip command to install geowombat, you're done! image

Happy Learning!

mmann1123 commented 9 months ago

Hey all, conda create -n test geowombat -c conda-forge is working fine on my windows computer - as it is on the conda-forge build pipelines.

As a general rule I highly recommend using mambaforge instead of conda (although it looks like the new mamba style solver might resolve some of the lag).

@twnawrocki Did you manage to get it installed? If not, please send some details on the error and maybe I can point you in the right direction.

twnawrocki commented 9 months ago

@mmann1123 Yes, my install worked with the libmamba solver (and I tested with success for mamba and pip as well). Interesting that the classic conda solver succeeds on your machine (and on the conda-forge pipelines). This seems like a potential bug in the classic solver itself. No objections from me if you'd like to close this issue.

mmann1123 commented 9 months ago

Good to hear it is working, odd about the classic solver

ShabaniMagawila commented 9 months ago

Thanks Michael On Tue, Oct 10, 2023, 5:02 PM Michael Mann @.***> wrote:

Closed #279 https://github.com/jgrss/geowombat/issues/279 as completed.

— Reply to this email directly, view it on GitHub https://github.com/jgrss/geowombat/issues/279#event-10605022321, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIV4HK3KRR4JES6XXCMI6X3X6VIOBAVCNFSM6AAAAAA2J5E6ZCVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJQGYYDKMBSGIZTEMI . You are receiving this because you were mentioned.Message ID: @.***>