[GRASS-dev] Automatic/CI compilation on macOS
Rainer M Krug
Rainer at krugs.de
Sun Mar 8 09:11:38 PDT 2020
> On 6 Mar 2020, at 18:40, Markus Metz <markus.metz.giswork at gmail.com> wrote:
>
>
>
> On Fri, Mar 6, 2020 at 8:50 AM Rainer M Krug <Rainer at krugs.de <mailto:Rainer at krugs.de>> wrote:
> >
> > OK. Looking at the parameters GRASS is compiled with (grass78 —config), I get the following proj related parameter (the complete output at the end of the email):
> >
> > --with-proj-includes=/usr/local/opt/osgeo-proj/include
> > --with-proj-libs=/usr/local/opt/osgeo-proj/lib
> > --with-proj-share=/usr/local/opt/osgeo-proj/share/proj
> >
> > Which seem to be correct, and proj.db is in the proj-share directory.
> >
> >
> > 08:37 $ ls -la /usr/local/opt/osgeo-proj/share/proj
> > total 12408
> > drwxr-xr-x 15 rainerkrug staff 480 Feb 10 11:16 .
> > drwxr-xr-x 4 rainerkrug staff 128 Feb 10 11:16 ..
> > -rw-r--r-- 1 rainerkrug staff 1183 Feb 10 11:16 CH
> > -rw-r--r-- 1 rainerkrug staff 728 Feb 10 11:16 GL27
> > -rw-r--r-- 1 rainerkrug staff 2099 Feb 10 11:16 ITRF2000
> > -rw-r--r-- 1 rainerkrug staff 3660 Feb 10 11:16 ITRF2008
> > -rw-r--r-- 1 rainerkrug staff 3468 Feb 10 11:16 ITRF2014
> > -rw-r--r-- 1 rainerkrug staff 6385 Feb 10 11:16 nad.lst
> > -rw-r--r-- 1 rainerkrug staff 19535 Feb 10 11:16 nad27
> > -rw-r--r-- 1 rainerkrug staff 16593 Feb 10 11:16 nad83
> > -rw-r--r-- 1 rainerkrug staff 232 Feb 10 11:16 null
> > -rw-r--r-- 1 rainerkrug staff 3915 Feb 10 11:16 other.extra
> > -rw-r--r-- 1 rainerkrug staff 6234112 Feb 10 11:16 proj.db
> > -rw-r--r-- 1 rainerkrug staff 32060 Feb 10 11:16 projjson.schema.json
> > -rw-r--r-- 1 rainerkrug staff 7079 Feb 10 11:16 world
> >
> >
> > So it looks fine, but I, even locally, get the following error when running the simple test:
> >
> > 08:40 $ grass78 --tmp-location EPSG:4326 --exec g.region res=0.1 -p
> > Starting GRASS GIS...
> > Creating new GRASS GIS location <tmploc>...
> > ERROR: b'proj_get_authorities_from_database: Cannot find proj.db
>
> This error comes directly from PROJ.
> Try
> export PROJ_LIB="usr/local/opt/osgeo-proj/share/proj"
>
> before starting GRASS. This will tell PROJ where its own share data are.
Does not work:
17:03 $ export PROJ_LIB="/usr/local/opt/osgeo-proj/share/proj"
✔ ~
17:03 $ grass78 --tmp-location EPSG:4326 --exec g.region res=0.1 -p
Starting GRASS GIS...
Creating new GRASS GIS location <tmploc>...
ERROR: b'proj_get_authorities_from_database: Cannot find proj.db
Exiting...
✘-1 ~
17:03 $ ls -la /usr/local/opt/osgeo-proj/share/proj
total 12408
drwxr-xr-x 15 rainerkrug staff 480 Feb 10 11:16 .
drwxr-xr-x 4 rainerkrug staff 128 Feb 10 11:16 ..
-rw-r--r-- 1 rainerkrug staff 1183 Feb 10 11:16 CH
-rw-r--r-- 1 rainerkrug staff 728 Feb 10 11:16 GL27
-rw-r--r-- 1 rainerkrug staff 2099 Feb 10 11:16 ITRF2000
-rw-r--r-- 1 rainerkrug staff 3660 Feb 10 11:16 ITRF2008
-rw-r--r-- 1 rainerkrug staff 3468 Feb 10 11:16 ITRF2014
-rw-r--r-- 1 rainerkrug staff 6385 Feb 10 11:16 nad.lst
-rw-r--r-- 1 rainerkrug staff 19535 Feb 10 11:16 nad27
-rw-r--r-- 1 rainerkrug staff 16593 Feb 10 11:16 nad83
-rw-r--r-- 1 rainerkrug staff 232 Feb 10 11:16 null
-rw-r--r-- 1 rainerkrug staff 3915 Feb 10 11:16 other.extra
-rw-r--r-- 1 rainerkrug staff 6234112 Feb 10 11:16 proj.db
-rw-r--r-- 1 rainerkrug staff 32060 Feb 10 11:16 projjson.schema.json
-rw-r--r-- 1 rainerkrug staff 7079 Feb 10 11:16 world
Any other suggestion?
>
> Markus M
>
> >
> >
> >
> > Here is the complete output from --config:
> >
> > 08:35 $ grass78 --config
> > x86_64-apple-darwin17.7.0
> > ./configure --prefix=/usr/local/Cellar/osgeo-grass/7.8.2_3 --with-cxx --enable-shared --enable-largefile --with-nls --with-includes=/usr/local/include --with-libs=/usr/local/LIB --with-python=/usr/local/Cellar/osgeo-grass/7.8.2_3/libexec/vendor/bin/python-config --with-tcltk --with-netcdf=/usr/local/opt/osgeo-netcdf/bin/nc-config --with-zstd --with-zstd-includes=/usr/local/opt/zstd/include --with-zstd-libs=/usr/local/opt/zstd/lib --with-readline --with-readline-includes=/usr/local/opt/readline/include --with-readline-libs=/usr/local/opt/readline/lib --with-blas --with-blas-includes=/usr/local/opt/openblas/include --with-blas-libs=/usr/local/opt/openblas/lib --with-lapack --with-lapack-includes=/usr/local/opt/lapack/include --with-lapack-libs=/usr/local/opt/lapack/lib --with-geos=/usr/local/opt/geos/bin/geos-config --with-geos-includes=/usr/local/opt/geos/include --with-geos-libs=/usr/local/opt/geos/lib --with-odbc --with-odbc-includes=/usr/local/opt/unixodbc/include --with-odbc-libs=/usr/local/opt/unixodbc/lib --with-gdal=/usr/local/opt/osgeo-gdal/bin/gdal-config --with-zlib-includes=/usr/local/opt/zlib/include --with-zlib-libs=/usr/local/opt/zlib/lib --with-bzlib --with-bzlib-includes=/usr/local/opt/bzip2/include --with-bzlib-libs=/usr/local/opt/bzip2/lib --with-cairo --with-cairo-includes=/usr/local/opt/cairo/include/cairo --with-cairo-libs=/usr/local/opt/cairo/lib --with-cairo-ldflags=-lfontconfig --with-freetype --with-freetype-includes=/usr/local/opt/freetype/include/freetype2 --with-freetype-libs=/usr/local/opt/freetype/lib --with-proj-includes=/usr/local/opt/osgeo-proj/include --with-proj-libs=/usr/local/opt/osgeo-proj/lib --with-proj-share=/usr/local/opt/osgeo-proj/share/proj --with-tiff --with-tiff-includes=/usr/local/opt/libtiff/include --with-tiff-libs=/usr/local/opt/libtiff/lib --with-png --with-png-includes=/usr/local/opt/libpng/include --with-png-libs=/usr/local/opt/libpng/lib --with-regex --with-fftw --with-fftw-includes=/usr/local/opt/fftw/include --with-fftw-libs=/usr/local/opt/fftw/lib --with-sqlite --with-sqlite-includes=/usr/local/opt/sqlite/include --with-sqlite-libs=/usr/local/opt/sqlite/lib --with-liblas=/usr/local/opt/osgeo-liblas/bin/liblas-config --with-postgres --with-postgres-includes=/usr/local/opt/osgeo-postgresql/include --with-postgres-libs=/usr/local/opt/osgeo-postgresql/lib --with-mysql --with-mysql-includes=/usr/local/opt/mysql/include/mysql --with-mysql-libs=/usr/local/opt/mysql/lib --with-pthread --with-pthread-includes=/usr/local/opt/boost/include/boost/thread --with-pthread-libs=/usr/local/opt/boost/lib --with-macosx-sdk=/Applications/Xcode-10.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk --with-macosx-archs=x86_64 --with-opengl-includes=/Applications/Xcode-10.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework/Headers --with-wxwidgets=/usr/local/opt/wxmac/bin/wx-config
> > clang
> > /usr/local/Cellar/osgeo-grass/7.8.2_3/grass78
> > Traceback (most recent call last):
> > File "/usr/local/Cellar/osgeo-grass/7.8.2_3/libexec/bin/grass78", line 2025, in main
> > index = sys.argv.index(batch_exec_param)
> > ValueError: '--exec' is not in list
> >
> > During handling of the above exception, another exception occurred:
> >
> > Traceback (most recent call last):
> > File "/usr/local/Cellar/osgeo-grass/7.8.2_3/libexec/bin/grass78", line 2216, in <module>
> > main()
> > File "/usr/local/Cellar/osgeo-grass/7.8.2_3/libexec/bin/grass78", line 2030, in main
> > params = parse_cmdline(sys.argv[1:], default_gui=default_gui)
> > File "/usr/local/Cellar/osgeo-grass/7.8.2_3/libexec/bin/grass78", line 1951, in parse_cmdline
> > print_params()
> > File "/usr/local/Cellar/osgeo-grass/7.8.2_3/libexec/bin/grass78", line 1862, in print_params
> > "%s\n" % val[0].split(':')[1].rstrip('$"\n').strip())
> > IndexError: list index out of range
> >
> >
> > Any suggestions what the problem is?
> >
> > Rainer
> >
> >
> >
> > On 5 Mar 2020, at 21:38, Vaclav Petras <wenzeslaus at gmail.com <mailto:wenzeslaus at gmail.com>> wrote:
> >
> >
> >
> > On Thu, Mar 5, 2020 at 1:52 PM Rainer M Krug <Rainer at krugs.de <mailto:Rainer at krugs.de>> wrote:
> >>
> >>
> >>
> >> On 5 Mar 2020, at 17:53, Vaclav Petras <wenzeslaus at gmail.com <mailto:wenzeslaus at gmail.com>> wrote:
> >>
> >>
> >>
> >> On Thu, Mar 5, 2020 at 11:37 AM Rainer M Krug <Rainer at krugs.de <mailto:Rainer at krugs.de>> wrote:
> >>>
> >>> OK - one step closer to success. Now I just have to know the location where the data for the tests can be downloaded from (I guess).
> >>
> >>
> >> Everything is in the repo, well, it needs to be, I guess the only question is where in the repo, so:
> >>
> >> https://github.com/GRASS-GIS/grass-gis-experimental-ci/blob/homebrew-osgeo4mac/test_thorough.sh <https://github.com/GRASS-GIS/grass-gis-experimental-ci/blob/homebrew-osgeo4mac/test_thorough.sh>
> >>
> >>>
> >>> Please check the log to at https://github.com/GRASS-GIS/grass-gis-experimental-ci/runs/487969965?check_suite_focus=true <https://github.com/GRASS-GIS/grass-gis-experimental-ci/runs/487969965?check_suite_focus=true> for the Basic test and the Thorough test. I will look at the return code later, when the tests are running.
> >>
> >>
> >> The problem there is probably a bad/missing path to PROJ db. I think it complains during the configuration already, so perhaps correct --with-proj-share will fix it. The runtime way of setting it is PROJ_LIB environmental variable. You can try something along these lines.
> >>
> >>
> >> I am trying to find the file `proj.db` but can’t find it - can you give me any indication, where it can be found in Linux (home-brew should use similar locations)?
> >
> >
> > Often it is in `/usr/share/proj`. Now you can find things like that in the Docker/Singularity/Vagrant configurations included in GRASS GIS source code or in the CIs, e.g., here:
> >
> > https://github.com/GRASS-GIS/grass-gis-experimental-ci/blob/master/build.sh#L39 <https://github.com/GRASS-GIS/grass-gis-experimental-ci/blob/master/build.sh#L39>
> >
> >
> >>
> >>
> >>
> >>
> >>>
> >>>
> >>> Rainer
> >>>
> >>>
> >>>
> >>> On 5 Mar 2020, at 16:28, Rainer M Krug <Rainer at krugs.de <mailto:Rainer at krugs.de>> wrote:
> >>>
> >>>
> >>>
> >>> On 5 Mar 2020, at 16:22, Rainer M Krug <Rainer at krugs.de <mailto:Rainer at krugs.de>> wrote:
> >>>
> >>>
> >>>
> >>> On 5 Mar 2020, at 14:52, Vaclav Petras <wenzeslaus at gmail.com <mailto:wenzeslaus at gmail.com>> wrote:
> >>>
> >>>
> >>>
> >>> On Thu, Mar 5, 2020 at 4:27 AM Rainer M Krug <Rainer at krugs.de <mailto:Rainer at krugs.de>> wrote:
> >>>>
> >>>> OK - found the ci.
> >>>>
> >>>> The formula installs, but I get a warning at the end, which results in a warning, which is than interpreted as an error. The warning (which I also get locally) is the following:
> >>>>
> >>>> If it is the case that you can change the shebang at the beginning of
> >>>>
> >>>> he script to enforce Python 3 usage.
> >>>>
> >>>> #!/usr/bin/env python
> >>>>
> >>>> Should be changed into
> >>>>
> >>>> #!/usr/bin/env python3
> >>>>
> >>>>
> >>>> I suspect that this needs to be done in GRASS itself?
> >>>
> >>>
> >>> Hi, thanks for looking into this. 7.8.2 (and also above) has python3 everywhere in shebang. See e.g.:
> >>>
> >>> $ grep -Irn "/usr/bin/env python[^3]"
> >>> scripts/g.extension/g.extension.py:1059 <http://g.extension.py:1059/>: "#!/usr/bin/env python\n",
> >>> scripts/g.extension/g.extension.py:1308 <http://g.extension.py:1308/>: "#!/usr/bin/env python\n",
> >>> # (these two are in fact code which is doing the replacement to python3)
> >>>
> >>> Can you please investigate locally where the message coming from?
> >>>
> >>>
> >>> The message comes from the formula as a Caveat. I *think* it is always displayed. But at the moment, I am not to sure where the error code comes from, as I get an error code at the end of the brew command of 0 locally.
> >>>
> >>> I will look into this.
> >>>
> >>>
> >>> Please ignore the following about the checkout.
> >>>
> >>> Found it.
> >>>
> >>>
> >>> Do you know, why there is a
> >>>
> >>> - uses: actions/checkout at v2
> >>>
> >>> In the action?
> >>>
> >>> It seems, that it will be executed last, and there is no checkout needed.
> >>>
> >>> Rainer
> >>>
> >>>
> >>>
> >>> Vaclav
> >>>
> >>>
> >>> --
> >>> Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
> >>>
> >>> Orcid ID: 0000-0002-7490-0066
> >>>
> >>> Department of Evolutionary Biology and Environmental Studies
> >>> University of Zürich
> >>> Office Y34-J-74
> >>> Winterthurerstrasse 190
> >>> 8075 Zürich
> >>> Switzerland
> >>>
> >>> Office: +41 (0)44 635 47 64
> >>> Cell: +41 (0)78 630 66 57
> >>> email: Rainer.Krug at uzh.ch <mailto:Rainer.Krug at uzh.ch>
> >>> Rainer at krugs.de <mailto:Rainer at krugs.de>
> >>> Skype: RMkrug
> >>>
> >>> PGP: 0x0F52F982
> >>>
> >>>
> >>>
> >>>
> >>> --
> >>> Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
> >>>
> >>> Orcid ID: 0000-0002-7490-0066
> >>>
> >>> Department of Evolutionary Biology and Environmental Studies
> >>> University of Zürich
> >>> Office Y34-J-74
> >>> Winterthurerstrasse 190
> >>> 8075 Zürich
> >>> Switzerland
> >>>
> >>> Office: +41 (0)44 635 47 64
> >>> Cell: +41 (0)78 630 66 57
> >>> email: Rainer.Krug at uzh.ch <mailto:Rainer.Krug at uzh.ch>
> >>> Rainer at krugs.de <mailto:Rainer at krugs.de>
> >>> Skype: RMkrug
> >>>
> >>> PGP: 0x0F52F982
> >>>
> >>>
> >>> --
> >>> Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
> >>>
> >>> Orcid ID: 0000-0002-7490-0066
> >>>
> >>> Department of Evolutionary Biology and Environmental Studies
> >>> University of Zürich
> >>> Office Y34-J-74
> >>> Winterthurerstrasse 190
> >>> 8075 Zürich
> >>> Switzerland
> >>>
> >>> Office: +41 (0)44 635 47 64
> >>> Cell: +41 (0)78 630 66 57
> >>> email: Rainer.Krug at uzh.ch <mailto:Rainer.Krug at uzh.ch>
> >>> Rainer at krugs.de <mailto:Rainer at krugs.de>
> >>> Skype: RMkrug
> >>>
> >>> PGP: 0x0F52F982
> >>>
> >>>
> >>>
> >>
> >> --
> >> Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
> >>
> >> Orcid ID: 0000-0002-7490-0066
> >>
> >> Department of Evolutionary Biology and Environmental Studies
> >> University of Zürich
> >> Office Y34-J-74
> >> Winterthurerstrasse 190
> >> 8075 Zürich
> >> Switzerland
> >>
> >> Office: +41 (0)44 635 47 64
> >> Cell: +41 (0)78 630 66 57
> >> email: Rainer.Krug at uzh.ch <mailto:Rainer.Krug at uzh.ch>
> >> Rainer at krugs.de <mailto:Rainer at krugs.de>
> >> Skype: RMkrug
> >>
> >> PGP: 0x0F52F982
> >
> >
> > --
> > Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
> >
> > Orcid ID: 0000-0002-7490-0066
> >
> > Department of Evolutionary Biology and Environmental Studies
> > University of Zürich
> > Office Y34-J-74
> > Winterthurerstrasse 190
> > 8075 Zürich
> > Switzerland
> >
> > Office: +41 (0)44 635 47 64
> > Cell: +41 (0)78 630 66 57
> > email: Rainer.Krug at uzh.ch <mailto:Rainer.Krug at uzh.ch>
> > Rainer at krugs.de <mailto:Rainer at krugs.de>
> > Skype: RMkrug
> >
> > PGP: 0x0F52F982
> >
> >
> >
> > _______________________________________________
> > grass-dev mailing list
> > grass-dev at lists.osgeo.org <mailto:grass-dev at lists.osgeo.org>
> > https://lists.osgeo.org/mailman/listinfo/grass-dev <https://lists.osgeo.org/mailman/listinfo/grass-dev>
--
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
Orcid ID: 0000-0002-7490-0066
Department of Evolutionary Biology and Environmental Studies
University of Zürich
Office Y34-J-74
Winterthurerstrasse 190
8075 Zürich
Switzerland
Office: +41 (0)44 635 47 64
Cell: +41 (0)78 630 66 57
email: Rainer.Krug at uzh.ch
Rainer at krugs.de
Skype: RMkrug
PGP: 0x0F52F982
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-dev/attachments/20200308/0049689a/attachment-0001.html>
More information about the grass-dev
mailing list