Unable to install on Windows
Hey folks, I'm not able to install geobr.
Here my commands:
conda create -n newenv python=3.12 geopandas fiona -c conda-forge
conda activate newenv
pip install geobr
I get this error message (very similar to #336):
Collecting geobr
Using cached geobr-0.2.1-py3-none-any.whl.metadata (4.1 kB)
Requirement already satisfied: geopandas<0.15.0,>=0.14.0 in c:\users\user1\miniconda3\envs\py312\lib\site-packages (from geobr) (0.14.4)
Collecting lxml<6.0.0,>=5.1.0 (from geobr)
Using cached lxml-5.2.2-cp312-cp312-win_amd64.whl.metadata (3.5 kB)
Requirement already satisfied: requests<3.0.0,>=2.25.1 in c:\users\user1\miniconda3\envs\py312\lib\site-packages (from geobr) (2.32.3)
Collecting shapely<2.0.0,>=1.7.0 (from geobr)
Using cached Shapely-1.8.5.post1.tar.gz (200 kB)
Installing build dependencies ... done
Getting requirements to build wheel ... error
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [33 lines of output]
Traceback (most recent call last):
File "C:\Users\user1\miniconda3\envs\py312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 353, in <module>
main()
File "C:\Users\user1\miniconda3\envs\py312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\user1\miniconda3\envs\py312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 112, in get_requires_for_build_wheel
backend = _build_backend()
^^^^^^^^^^^^^^^^
File "C:\Users\user1\miniconda3\envs\py312\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 77, in _build_backend
obj = import_module(mod_path)
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\user1\miniconda3\envs\py312\Lib\importlib\__init__.py", line 90, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1310, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 995, in exec_module
File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
File "C:\Users\user1\AppData\Local\Temp\pip-build-env-057xnk8t\overlay\Lib\site-packages\setuptools\__init__.py", line 16, in <module>
import setuptools.version
File "C:\Users\user1\AppData\Local\Temp\pip-build-env-057xnk8t\overlay\Lib\site-packages\setuptools\version.py", line 1, in <module>
import pkg_resources
File "C:\Users\user1\AppData\Local\Temp\pip-build-env-057xnk8t\overlay\Lib\site-packages\pkg_resources\__init__.py", line 2191, in <module>
register_finder(pkgutil.ImpImporter, find_on_path)
^^^^^^^^^^^^^^^^^^^
AttributeError: module 'pkgutil' has no attribute 'ImpImporter'. Did you mean: 'zipimporter'?
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
I suspect this issue occurs because geobr does not allow the latest version of shapely, which is 2.0.4.
Is there a workaround until a fix is available?
Thank you
Windows 10 Pro
Python 3.12.3
attrs 23.2.0 pyh71513ae_0 conda-forge
aws-c-auth 0.7.22 ha390a07_2 conda-forge
aws-c-cal 0.6.14 h750c3ff_1 conda-forge
aws-c-common 0.9.19 h2466b09_0 conda-forge
aws-c-compression 0.2.18 h750c3ff_6 conda-forge
aws-c-event-stream 0.4.2 he05106e_12 conda-forge
aws-c-http 0.8.1 h55c4ea9_17 conda-forge
aws-c-io 0.14.8 ha255af7_5 conda-forge
aws-c-mqtt 0.10.4 heb8cf2b_4 conda-forge
aws-c-s3 0.5.9 haf5e0f7_3 conda-forge
aws-c-sdkutils 0.1.16 h750c3ff_2 conda-forge
aws-checksums 0.1.18 h750c3ff_6 conda-forge
aws-crt-cpp 0.26.9 hb2f7e64_0 conda-forge
aws-sdk-cpp 1.11.329 h752cf48_3 conda-forge
azure-core-cpp 1.11.1 h249a519_1 conda-forge
azure-identity-cpp 1.6.0 h91493d7_1 conda-forge
azure-storage-blobs-cpp 12.10.0 h91493d7_1 conda-forge
azure-storage-common-cpp 12.5.0 h91493d7_4 conda-forge
blosc 1.21.5 hbd69f2e_1 conda-forge
branca 0.7.2 pyhd8ed1ab_0 conda-forge
brotli 1.1.0 hcfcfb64_1 conda-forge
brotli-bin 1.1.0 hcfcfb64_1 conda-forge
brotli-python 1.1.0 py312h53d5487_1 conda-forge
bzip2 1.0.8 hcfcfb64_5 conda-forge
c-ares 1.28.1 hcfcfb64_0 conda-forge
ca-certificates 2024.6.2 h56e8100_0 conda-forge
cairo 1.18.0 h1fef639_0 conda-forge
certifi 2024.2.2 pyhd8ed1ab_0 conda-forge
cfitsio 4.4.0 h9b0cee5_1 conda-forge
charset-normalizer 3.3.2 pyhd8ed1ab_0 conda-forge
click 8.1.7 win_pyh7428d3b_0 conda-forge
click-plugins 1.1.1 py_0 conda-forge
cligj 0.7.2 pyhd8ed1ab_1 conda-forge
colorama 0.4.6 pyhd8ed1ab_0 conda-forge
contourpy 1.2.1 py312h0d7def4_0 conda-forge
cycler 0.12.1 pyhd8ed1ab_0 conda-forge
expat 2.6.2 h63175ca_0 conda-forge
fiona 1.9.6 py312h4a86439_3 conda-forge
fmt 10.2.1 h181d51b_0 conda-forge
folium 0.16.0 pyhd8ed1ab_0 conda-forge
font-ttf-dejavu-sans-mono 2.37 hab24e00_0 conda-forge
font-ttf-inconsolata 3.000 h77eed37_0 conda-forge
font-ttf-source-code-pro 2.038 h77eed37_0 conda-forge
font-ttf-ubuntu 0.83 h77eed37_2 conda-forge
fontconfig 2.14.2 hbde0cde_0 conda-forge
fonts-conda-ecosystem 1 0 conda-forge
fonts-conda-forge 1 0 conda-forge
fonttools 4.53.0 py312h4389bb4_0 conda-forge
freetype 2.12.1 hdaf720e_2 conda-forge
freexl 2.0.0 h8276f4a_0 conda-forge
gdal 3.9.0 py312h7090a6d_5 conda-forge
geopandas 0.14.4 pyhd8ed1ab_0 conda-forge
geopandas-base 0.14.4 pyha770c72_0 conda-forge
geos 3.12.1 h1537add_0 conda-forge
geotiff 1.7.3 hfbd0779_0 conda-forge
hdf4 4.2.15 h5557f11_7 conda-forge
hdf5 1.14.3 nompi_h2b43c12_105 conda-forge
icu 73.2 h63175ca_0 conda-forge
idna 3.7 pyhd8ed1ab_0 conda-forge
intel-openmp 2024.1.0 h57928b3_966 conda-forge
jinja2 3.1.4 pyhd8ed1ab_0 conda-forge
joblib 1.4.2 pyhd8ed1ab_0 conda-forge
kealib 1.5.3 h6c43f9b_1 conda-forge
kiwisolver 1.4.5 py312h0d7def4_1 conda-forge
krb5 1.21.2 heb0366b_0 conda-forge
lcms2 2.16 h67d730c_0 conda-forge
lerc 4.0.0 h63175ca_0 conda-forge
libabseil 20240116.2 cxx17_h63175ca_0 conda-forge
libaec 1.1.3 h63175ca_0 conda-forge
libarchive 3.7.4 haf234dc_0 conda-forge
libblas 3.9.0 22_win64_mkl conda-forge
libboost-headers 1.85.0 h57928b3_1 conda-forge
libbrotlicommon 1.1.0 hcfcfb64_1 conda-forge
libbrotlidec 1.1.0 hcfcfb64_1 conda-forge
libbrotlienc 1.1.0 hcfcfb64_1 conda-forge
libcblas 3.9.0 22_win64_mkl conda-forge
libcrc32c 1.1.2 h0e60522_0 conda-forge
libcurl 8.8.0 hd5e4a3a_0 conda-forge
libdeflate 1.20 hcfcfb64_0 conda-forge
libexpat 2.6.2 h63175ca_0 conda-forge
libffi 3.4.2 h8ffe710_5 conda-forge
libgdal 3.9.0 h4f813f3_5 conda-forge
libglib 2.80.2 h0df6a38_0 conda-forge
libgoogle-cloud 2.24.0 h5e7cea3_0 conda-forge
libgoogle-cloud-storage 2.24.0 hce61461_0 conda-forge
libgrpc 1.62.2 h5273850_0 conda-forge
libhwloc 2.10.0 default_h8125262_1001 conda-forge
libiconv 1.17 hcfcfb64_2 conda-forge
libintl 0.22.5 h5728263_2 conda-forge
libjpeg-turbo 3.0.0 hcfcfb64_1 conda-forge
libkml 1.3.0 haf3e7a6_1018 conda-forge
liblapack 3.9.0 22_win64_mkl conda-forge
libnetcdf 4.9.2 nompi_h07c049d_113 conda-forge
libpng 1.6.43 h19919ed_0 conda-forge
libpq 16.3 hab9416b_0 conda-forge
libprotobuf 4.25.3 h503648d_0 conda-forge
libre2-11 2023.09.01 hf8d8778_2 conda-forge
librttopo 1.1.0 h94c4f80_15 conda-forge
libspatialindex 1.9.3 h5a68840_5 conda-forge
libspatialite 5.1.0 h1b08085_6 conda-forge
libsqlite 3.45.3 hcfcfb64_0 conda-forge
libssh2 1.11.0 h7dfc565_0 conda-forge
libtiff 4.6.0 hddb2be6_3 conda-forge
libwebp-base 1.4.0 hcfcfb64_0 conda-forge
libxcb 1.15 hcd874cb_0 conda-forge
libxml2 2.12.7 h283a6d9_1 conda-forge
libzip 1.10.1 h1d365fa_3 conda-forge
libzlib 1.3.1 h2466b09_1 conda-forge
lz4-c 1.9.4 hcfcfb64_0 conda-forge
lzo 2.10 hcfcfb64_1001 conda-forge
m2w64-gcc-libgfortran 5.3.0 6 conda-forge
m2w64-gcc-libs 5.3.0 7 conda-forge
m2w64-gcc-libs-core 5.3.0 7 conda-forge
m2w64-gmp 6.1.0 2 conda-forge
m2w64-libwinpthread-git 5.0.0.4634.697f757 2 conda-forge
mapclassify 2.6.1 pyhd8ed1ab_0 conda-forge
markupsafe 2.1.5 py312he70551f_0 conda-forge
matplotlib-base 3.8.4 py312hfee7060_2 conda-forge
minizip 4.0.6 hb638d1e_0 conda-forge
mkl 2024.1.0 h66d3029_692 conda-forge
msys2-conda-epoch 20160418 1 conda-forge
munkres 1.1.4 pyh9f0ad1d_0 conda-forge
networkx 3.3 pyhd8ed1ab_1 conda-forge
numpy 1.26.4 py312h8753938_0 conda-forge
openjpeg 2.5.2 h3d672ee_0 conda-forge
openssl 3.3.1 h2466b09_0 conda-forge
packaging 24.0 pyhd8ed1ab_0 conda-forge
pandas 2.2.2 py312h72972c8_1 conda-forge
pcre2 10.43 h17e33f8_0 conda-forge
pillow 10.3.0 py312h6f6a607_0 conda-forge
pip 24.0 pyhd8ed1ab_0 conda-forge
pixman 0.43.4 h63175ca_0 conda-forge
poppler 24.04.0 h747fd5a_0 conda-forge
poppler-data 0.4.12 hd8ed1ab_0 conda-forge
postgresql 16.3 h7f155c9_0 conda-forge
proj 9.4.0 he13c7e8_1 conda-forge
pthread-stubs 0.4 hcd874cb_1001 conda-forge
pthreads-win32 2.9.1 hfa6e2cd_3 conda-forge
pyparsing 3.1.2 pyhd8ed1ab_0 conda-forge
pyproj 3.6.1 py312h616b599_6 conda-forge
pysocks 1.7.1 pyh0701188_6 conda-forge
python 3.12.3 h2628c8c_0_cpython conda-forge
python-dateutil 2.9.0 pyhd8ed1ab_0 conda-forge
python-tzdata 2024.1 pyhd8ed1ab_0 conda-forge
python_abi 3.12 4_cp312 conda-forge
pytz 2024.1 pyhd8ed1ab_0 conda-forge
re2 2023.09.01 hd3b24a8_2 conda-forge
requests 2.32.3 pyhd8ed1ab_0 conda-forge
rtree 1.2.0 py312h72b5f30_0 conda-forge
scikit-learn 1.5.0 py312h816cc57_1 conda-forge
scipy 1.13.1 py312h1f4e10d_0 conda-forge
setuptools 70.0.0 pyhd8ed1ab_0 conda-forge
shapely 2.0.4 py312h91267bd_1 conda-forge
six 1.16.0 pyh6c4a22f_0 conda-forge
snappy 1.2.0 hfb803bf_1 conda-forge
spdlog 1.13.0 h64d2f7d_0 conda-forge
sqlite 3.45.3 hcfcfb64_0 conda-forge
tbb 2021.12.0 hc790b64_1 conda-forge
threadpoolctl 3.5.0 pyhc1e730c_0 conda-forge
tiledb 2.23.0 h98cc7b1_2 conda-forge
tk 8.6.13 h5226925_1 conda-forge
tzdata 2024a h0c530f3_0 conda-forge
ucrt 10.0.22621.0 h57928b3_0 conda-forge
uriparser 0.9.8 h5a68840_0 conda-forge
urllib3 2.2.1 pyhd8ed1ab_0 conda-forge
vc 14.3 ha32ba9b_20 conda-forge
vc14_runtime 14.38.33135 h835141b_20 conda-forge
vs2015_runtime 14.38.33135 h22015db_20 conda-forge
wheel 0.43.0 pyhd8ed1ab_1 conda-forge
win_inet_pton 1.1.0 pyhd8ed1ab_6 conda-forge
xerces-c 3.2.5 h63175ca_0 conda-forge
xorg-libxau 1.0.11 hcd874cb_0 conda-forge
xorg-libxdmcp 1.1.3 hcd874cb_0 conda-forge
xyzservices 2024.4.0 pyhd8ed1ab_0 conda-forge
xz 5.2.6 h8d14728_0 conda-forge
zlib 1.3.1 h2466b09_1 conda-forge
zstd 1.5.6 h0ea2cb4_0 conda-forge
@BAFurtado , is there a way we could allow for more recent versions of shapely?
I wouldn't know the interdependencies of spatial libraries. I suggest using the poetry package management as per the documentation description or using conda with the poetry dependencies as listed geopandas = "^0.14.0"
shapely = "^1.7.0"
python = "^3.9"
requests = "^2.25.1"
lxml = "^5.1.0"
html5lib = "1.1".
To allow for more recent versions we would have to examine the changelog of shapely and adjust accordingly while making sure all of the other geospatial libraries (gdal, fiona, geopandas) also maintain compatibility.
I hope that helps, best,
Thank you @BAFurtado , I will try your suggestion.
And I believe the optimum time to update geobr dependencies would be when pandas 3.0 is released this year (there will be breaking changes for many packages due to numpy 2.0 as well).
I have the same problem when installing on mac. AttributeError: module 'pkgutil' does not have attribute 'ImpImporter'.
I have already created a new venv and also tried to do as suggested by Lucas-Pavesys on #336, both without success.
Any suggestions on what I can do?
Please have a look at the accepted answer to this SO question. It might be helpful
Same error:
File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
File "C:\Users\nyck\AppData\Local\Temp\pip-build-env-9bus_vmc\overlay\Lib\site-packages\setuptools\__init__.py", line 16, in <module>
import setuptools.version
File "C:\Users\nyck\AppData\Local\Temp\pip-build-env-9bus_vmc\overlay\Lib\site-packages\setuptools\version.py", line 1, in <module>
import pkg_resources
File "C:\Users\nyck\AppData\Local\Temp\pip-build-env-9bus_vmc\overlay\Lib\site-packages\pkg_resources\__init__.py", line 2191, in <module>
register_finder(pkgutil.ImpImporter, find_on_path)
^^^^^^^^^^^^^^^^^^^
AttributeError: module 'pkgutil' has no attribute 'ImpImporter'. Did you mean: 'zipimporter'?
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
Any ideas?
My System:
- Windows 11 x64
- Python 3.12.5
@vss-2, do you think you could have a look a this ? this would be much appreciated !
Sure! According to this StackOverFlow question, pip (Python's package manager) used to use the "ImpImporter" class which was deprecated in Python 3.12.
Geobr python's pipeline verifies builds up to Python 3.11, that's why we didn't detect this lack of support before.
The easiest way to solve this bug is by removing the Python 3.12 build from your geo_env environment and installing again using 3.11.10 (latest 3.11 build, launched Sept. 7th, 2024) as environment version target. The procedure is just two steps different from our installation tutorial section:
conda remove -n geo_env --all # Remove existing environment
conda create -n geo_env
conda activate geo_env
conda config --env --add channels conda-forge
conda config --env --set channel_priority strict
conda install python=3.11.10 geopandas
pip install geobr
@GitHunter0 and @nyckmaia, have you tried @vss-2 's suggestion?
Hey @rafapereirabr , I just checked the suggestion and it is working.
I hope python latest versions could be supported as well.