[GRASS-user] compiling grass-7.8.5 on conda environment

Laura Poggio laura.poggio at gmail.com
Tue Aug 3 08:21:49 PDT 2021


Hi Vaclav,
thanks a lot!
with the patch for the makefile in the repository I managed to solve the
previous error. Now I am getting a different error apparently linked to
some library conflict (same combination of libraries works in a different
environment):

/home/user/conda3/envs/sg_py3_geo//lib//libspatialite.so.7: undefined
reference to `GEOSFrechetDistance'
/home/user/conda3/envs/sg_py3_geo//lib//libspatialite.so.7: undefined
reference to `GEOSFrechetDistance_r'
/home/user/conda3/envs/sg_py3_geo//lib//libspatialite.so.7: undefined
reference to `GEOSFrechetDistanceDensify'
/home/user/conda3/envs/sg_py3_geo//lib//libgdal.so.27: undefined reference
to `GEOSMakeValid_r'
/home/user/conda3/envs/sg_py3_geo//lib//libspatialite.so.7: undefined
reference to `GEOSFrechetDistanceDensify_r'

Tomorrow I will try again with a clean conda environment implementing all
of your scripts.
Thanks a lot!

Laura



On Tue, 3 Aug 2021 at 15:32, Vaclav Petras <wenzeslaus at gmail.com> wrote:

> Hi Laura,
>
> See whether the following is helpful to you. It uses everything from conda
> and has some local fixes for iconv. I didn't test 7.8.5 specifically, only
> the 7.8 release branch.
>
> GRASS GIS on HPC Henry2
> https://github.com/ncsu-geoforall-lab/grass-gis-on-hpc-henry2/
>
> Some more comments:
>
> On Tue, Aug 3, 2021 at 9:12 AM Laura Poggio <laura.poggio at gmail.com>
> wrote:
>
>>
>> I am trying to compile grass 7.8.5 in a conda environment (on centos7,
>> managed HPC) adapting this instructions here
>> <https://github.com/GRASS-GIS/grass-gis-experimental-ci/blob/conda-compile/configure.sh>
>> .
>>
>
> Nobody touched that repo for a while, but development happened elsewhere.
> We have a CentOS 7 build partially using conda in the main repo's CI.
> However, my experience was that the CentOS 7 Docker container in CI was
> very different from the CentOS 7 environment on HPC which has many
> customizations.
>
> https://github.com/OSGeo/grass/blob/master/.github/workflows/centos.yml
>
> There is also a conda-based build for macOS, but that would need to be
> adapted
>
>
>> conda create -y -n $conda_env python=3.8.5
>> conda activate $conda_env
>> conda install -c conda-forge geos gdal==3.3.1 -y
>> conda install -c conda-forge pdal fftw -y
>> conda install -c biobuilds libxml2
>> conda install -c conda-forge libiconv
>>
>
> The GRASS GIS on Henry 2 repo has an environment file you can use.
>
>
>>
>> compile works well. make gives a lot of errors. When I run make again in
>> one of the folder, I get this errors:
>> /home/user/grasspy3/grass-7.8.5/dist.x86_64-pc-linux-gnu/lib/
>> libgrass_gis.7.8.so: undefined reference to `libiconv'
>> /home/user/grasspy3/grass-7.8.5/dist.x86_64-pc-linux-gnu/lib/
>> libgrass_gis.7.8.so: undefined reference to `libiconv_open'
>> /home/user/grasspy3/grass-7.8.5/dist.x86_64-pc-linux-gnu/lib/
>> libgrass_gis.7.8.so: undefined reference to `libiconv_close'
>>
>
> I was not able to create a proper fix for GRASS GIS configuration, but the
> repo has a somewhat hacky patch applied locally which injects libiconv into
> more places.
>
> Let me know how this goes. With the scripts in GRASS GIS on Henry 2, I can
> install new versions easily, but I would like to see it more streamlined
> with less local customizations.
>
> Best,
> Vaclav
>
>
>>
>> I found this answer
>> <http://osgeo-org.1560.x6.nabble.com/Adding-path-iconv-library-to-configure-td5431037.html>,
>> but I am not sure how to continue from there.
>> Thanks a lot
>> Laura
>>
>> _______________________________________________
>> grass-user mailing list
>> grass-user at lists.osgeo.org
>> https://lists.osgeo.org/mailman/listinfo/grass-user
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20210803/b8b63b95/attachment.html>


More information about the grass-user mailing list