6

This question was asked several years ago at: Can ArcGIS and OSGeo4W share the same python install?, but it seems that versions have changed since then.

I currently have ArcGIS 10.0 installed (not sure when I will upgrade to 10.1) and I would like to install OSGeo4W on my computer as well. ArcGIS 10.0 installs Python 2.6.5 and OSGeo4W wants to install Python 2.7.2. Can these two packages use the same Python installation despite different versions?

Otherwise, is there an easy way to install OSGeo4W with the correct Python version and keep the two Python versions completely separate on a single computer?

PolyGeo
  • 65,136
  • 29
  • 109
  • 338
Brian
  • 4,209
  • 4
  • 33
  • 53
  • This is now the best answer for co-existing ArcGIS + {other} python installs: https://gis.stackexchange.com/questions/86850/making-separate-python-installation-that-can-call-arcpy – matt wilkie Nov 14 '17 at 18:09

3 Answers3

4

No. Different Python Major.Minor versions have different ABIs, so any C extension/DLL/core module in one version of Python won't work in another. If one application imports Python26.dll it is keyed to Python 2.6 no matter what.

Jason Scheirer
  • 18,002
  • 2
  • 53
  • 72
3

If you go with the default install of osgeo4w it will create a folder on the c drive for all the osgeo projects. this will also have a launcher for the osgeo4w commandline environment which is nicely self-contained. (it usually places a shortcut to the desktop as well)

You just have to remember to launch that and not cmd if you want to use the osgeo python install.

PolyGeo
  • 65,136
  • 29
  • 109
  • 338
s_a
  • 951
  • 6
  • 10
3

If you want an simple IDE like "idle" to write Pythonscripts, you could use Pythonwin under %OSGEO4W_ROOT%\apps\python27\lib\site-packages\pythonwin\Pythonwin.exe where %OSGEO4W_ROOT% usually points to C:\OSGeo4W

Here is a batch-File I'vh put on my desktop to start it:

@echo on

SET OSGEO4W_ROOT=C:\OSGeo4W

call %OSGEO4W_ROOT%\bin\o4w_env.bat

SET PYTHONPATH=%OSGEO4W_ROOT%\apps\qgis\python;%OSGEO4W_ROOT%\apps\python27\lib;%OSGEO4W_ROOT%\apps\python27\lib\site-packages

SET PATH=%OSGEO4W_ROOT%\apps\qgis\bin;%PATH%

CD %OSGEO4W_ROOT%\apps\python27\lib\site-packages\pythonwin
call %OSGEO4W_ROOT%\apps\python27\lib\site-packages\pythonwin\Pythonwin.exe %*