I am trying to install the GDAL library with Python on Windows 10. The Python version is MSC v.1500 64 bit (AMD64). The setup files (core and GDAL binaries) are from Tamas Szekeres’ Windows binaries based on the Python version. Path Variables were set up but after testing (gdalinfo --version), the terminal did not show it was installed successfully. Checking the C:\Program Files list, the GDAL files did not show up.

I am wondering how I can install GDAL with Python on Windows 10 successfully?

  • So you used the MSI installers, or?
    – user30184
    Mar 7, 2018 at 20:38
  • the way I did it is first install GDAL, then install the MSI python installer for the GDAL version you installed and made sure it was for my correct python version
    – ziggy
    Mar 7, 2018 at 20:40
  • I vaguely remember having to custom set the install path to lib/site_packages and it should show up in the osgeo folder
    – ziggy
    Mar 7, 2018 at 20:41
  • @user30184 Thanks for your reply. yes, I used the .msi file to install GDAL.
    – Yuhao Wu
    Mar 7, 2018 at 21:03

1 Answer 1


I'd recommend installing GDAL using OSGeo4W, which will set up an environment where all these tools will work nicely together.

You may have some luck using the new package management tool for Windows, Chocolately, but I haven't tried it yet for GDAL (it worked really well to install NPM and other tools for me, though, and seems to be the sensible option these days).

  • Wow, OSGeo4W works as a shell. I never used it before. Thanks for your answer. I will try it. But I am not sure I can call the shell in a python script to execute a gdal command.
    – Yuhao Wu
    Mar 7, 2018 at 21:37
  • Hi @YuhaoWu, you can definitely add the bin folder from OSGeo4W to your path, and then can call gdal tools from there ;-)
    – Alex Leith
    Mar 7, 2018 at 21:55
  • So after I add the bin folder to the Environment Variables, I can call the gdal tools? and I can call the gdal tool with Python code? Sorry,could you please tell me more about how to call it with python? Thanks
    – Yuhao Wu
    Mar 7, 2018 at 22:01
  • 2
    I got it, thank you so much. I used shell to run python script. So when script call the terminal, the shell is used to execute the command.
    – Yuhao Wu
    Mar 8, 2018 at 23:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.