That might have saved us a load of hassle. The OSGeo installed is a real 
pain behind our firewall.

Thanks Adam

On Wednesday, March 11, 2020 at 9:51:31 PM UTC, Adam Cox wrote:
>
> No problem Lindsey. I just did some more testing and it seems like you can 
> pare down those settings lines. I was suspicious because I realized that 
> PATH line is actually incorrect, and it needs a ";" in it, like this:
>
> os.environ['PATH'] = os.path.join(envpath, r"Lib\site-packages\osgeo")* + 
> ';' + *os.environ['PATH']
>
> Also, everything checks out even after I remove the GDAL_DATA and PROJ_LIB 
> lines.
>
> Adam
>
> On Wed, Mar 11, 2020 at 4:20 PM Lindsey Gant <[email protected] 
> <javascript:>> wrote:
>
>> Thanks, Adam!! As someone who has struggled with GDAL, this suggestion is 
>> very welcome and I would love to hear how it works out for people.
>>
>>
>>
>> On Wednesday, March 11, 2020 at 1:40:43 PM UTC-7, Adam Cox wrote:
>>>
>>> Hi all, in setting up a development environment for Arches 5, I just 
>>> encountered a new method for installing GDAL on windows that is easier than 
>>> what I'm used to. In the past, I have used the OSGeo4W installer, or have 
>>> downloaded and installed GDAL separately. The new way I just found actually 
>>> installs GDAL directly into the virtual environment so you can set 
>>> environment variables to point to it there on startup.
>>>
>>> 1. Download the Windows binary for your appropriate system architecture 
>>> (64- or 32-bit) from the Christoph Gohlke site: 
>>> https://www.lfd.uci.edu/~gohlke/pythonlibs/#gdal
>>>
>>> I used version 2.4.1, which seems to be ok so far, even though Django 
>>> 2.2 docs say GDAL 2.3 is the highest supported version: 
>>> https://docs.djangoproject.com/en/2.2/ref/contrib/gis/install/geolibs/. 
>>> From the Gohlke site you can get an older version too.
>>>
>>> 2. Install the .whl file into your virtual environment
>>>
>>> For me: pip install 
>>> \path\to\downloaded\GDAL-2.4.1-cp37-cp37m-win_amd64.whl
>>>
>>> 3. In settings_local.py, add these lines. Note that your environment 
>>> variables are being modified temporarily when the app is run, so you 
>>> *don't* need to change any of the real environment variables on your 
>>> system. The environment variables are now pointing directly inside your 
>>> virtual environment, not to any global installation of GDAL, OSGeo4W, etc.
>>>
>>> import os
>>>
>>> os.environ['GDAL_DATA'] = 
>>> r"C:\archesproject\ENV\Lib\site-packages\osgeo\data\gdal"
>>> os.environ['PROJ_LIB'] = 
>>> r"C:\archesproject\ENV\Lib\site-packages\osgeo\data\proj"
>>> os.environ['PATH'] = r"C:\archesproject\ENV\Lib\site-packages\osgeo" + 
>>> os.environ['PATH']
>>> GDAL_LIBRARY_PATH = 
>>> r'C:\archesproject\ENV\Lib\site-packages\osgeo\gdal204.dll' 
>>>
>>>
>>> For reference, here is the stack exchange question where I got this 
>>> solution: 
>>> https://gis.stackexchange.com/questions/330418/geodjango-cant-find-gdal
>>>
>>> If anyone tries this method, please post here to let me and others know 
>>> how it goes. Would be nice to have a tried and true better way of dealing 
>>> with GDAL, especially on systems that may need different versions of it for 
>>> different application.
>>>
>>> Adam
>>>
>>> p.s. A more dynamic, less hard-coded refactor of the settings_local 
>>> lines looks like this:
>>>
>>> import os
>>>
>>> envpath = os.environ['VIRTUAL_ENV']
>>> os.environ['GDAL_DATA'] = os.path.join(envpath, 
>>> r"Lib\site-packages\osgeo\data\gdal")
>>> os.environ['PROJ_LIB'] = os.path.join(envpath, 
>>> r"Lib\site-packages\osgeo\data\proj")
>>> os.environ['PATH'] = os.path.join(envpath, r"Lib\site-packages\osgeo") + 
>>> os.environ['PATH']
>>> GDAL_LIBRARY_PATH = os.path.join(envpath, 
>>> r"Lib\site-packages\osgeo\gdal204.dll")
>>>
>> -- 
>> -- To post, send email to [email protected] <javascript:>. To 
>> unsubscribe, send email to [email protected] <javascript:>. For 
>> more information, visit 
>> https://groups.google.com/d/forum/archesproject?hl=en
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Arches Project" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/archesproject/63666f24-8e7e-4ad2-a17c-bcc6c73953c5%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/archesproject/63666f24-8e7e-4ad2-a17c-bcc6c73953c5%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
-- To post, send email to [email protected]. To unsubscribe, send 
email to [email protected]. For more information, 
visit https://groups.google.com/d/forum/archesproject?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Arches Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/archesproject/6a60a733-8c80-42e4-a92b-1418e5e7fb27%40googlegroups.com.

Reply via email to