[GeoNode-users] Installing Geonode from advanced core ubuntu-18-04 and requirements.txt issues

Davide Marchi danjde at msw.it
Sun Sep 13 07:48:42 PDT 2020


Hi Devs,
we are installing Geonode (and later Geoserver) on Ubuntu 18.04 using 
the "advanced core ubuntu-18-04" documentation--> 
https://docs.geonode.org/en/master/install/advanced/core/index.html#ubuntu-18-04 
(no docker).

We have found some issues, related to the requirements version on file 
"requirements.txt",
here any details:



1)
# Install Openjdk
sudo -i apt update
sudo apt install openjdk-8-jdk-headless default-jdk-headless -y
sudo update-java-alternatives --jre-headless --jre --set 
java-1.8.0-openjdk-amd64

replaced with:

# Install Openjdk
sudo -i apt update
sudo apt install openjdk-11-jdk-headless default-jdk-headless -y
sudo update-java-alternatives --jre-headless --jre --set 
java-1.11.0-openjdk-amd64

2)

   Downloading psycopg2-2.8.5.tar.gz (380 kB)
      |████████████████████████████████| 380 kB 27.9 MB/s
     ERROR: Command errored out with exit status 1:
      command: /home/geonode/.virtualenvs/geonode/bin/python3 -c 'import 
sys, setuptools, tokenize; sys.argv[0] = 
'"'"'/tmp/pip-install-q9uqi6ap/psycopg2/setup.py'"'"'; 
__file__='"'"'/tmp/pip-install-q9uqi6ap/psycopg2/setup.py'"'"';f=getattr(tokenize, 
'"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', 
'"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' 
egg_info --egg-base /tmp/pip-pip-egg-info-c1buzarp
          cwd: /tmp/pip-install-q9uqi6ap/psycopg2/
     Complete output (23 lines):
     running egg_info
     creating /tmp/pip-pip-egg-info-c1buzarp/psycopg2.egg-info
     writing /tmp/pip-pip-egg-info-c1buzarp/psycopg2.egg-info/PKG-INFO
     writing dependency_links to 
/tmp/pip-pip-egg-info-c1buzarp/psycopg2.egg-info/dependency_links.txt
     writing top-level names to 
/tmp/pip-pip-egg-info-c1buzarp/psycopg2.egg-info/top_level.txt
     writing manifest file 
'/tmp/pip-pip-egg-info-c1buzarp/psycopg2.egg-info/SOURCES.txt'

     Error: pg_config executable not found.

     pg_config is required to build psycopg2 from source.  Please add the 
directory
     containing pg_config to the $PATH or specify the full executable 
path with the
     option:

         python setup.py build_ext --pg-config /path/to/pg_config build 
...

     or with the pg_config option in 'setup.cfg'.

     If you prefer to avoid building psycopg2 from source, please install 
the PyPI
     'psycopg2-binary' package instead.

     For further information please check the 'doc/src/install.rst' file 
(also at
     <https://www.psycopg.org/docs/install.html>).

     ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info 
Check the logs for full command output.


solved by installing "libpq-dev"
Rif: 
https://stackoverflow.com/questions/11618898/pg-config-executable-not-found


3)
   Downloading gunicorn-20.0.4-py2.py3-none-any.whl (77 kB)
      |████████████████████████████████| 77 kB 42.3 MB/s
ERROR: Could not find a version that satisfies the requirement 
ipython==7.17.0 (from -r requirements.txt (line 134)) (from versions: 
0.10, 0.10.1, 0.10.2, 0.11, 0.12, 0.12.1, 0.13, 0.13.1, 0.13.2, 1.0.0, 
1.1.0, 1.2.0, 1.2.1, 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.3.1, 2.4.0, 2.4.1, 
3.0.0, 3.1.0, 3.2.0, 3.2.1, 3.2.2, 3.2.3, 4.0.0b1, 4.0.0, 4.0.1, 4.0.2, 
4.0.3, 4.1.0rc1, 4.1.0rc2, 4.1.0, 4.1.1, 4.1.2, 4.2.0, 4.2.1, 5.0.0b1, 
5.0.0b2, 5.0.0b3, 5.0.0b4, 5.0.0rc1, 5.0.0, 5.1.0, 5.2.0, 5.2.1, 5.2.2, 
5.3.0, 5.4.0, 5.4.1, 5.5.0, 5.6.0, 5.7.0, 5.8.0, 5.9.0, 5.10.0, 
6.0.0rc1, 6.0.0, 6.1.0, 6.2.0, 6.2.1, 6.3.0, 6.3.1, 6.4.0, 6.5.0, 
7.0.0b1, 7.0.0rc1, 7.0.0, 7.0.1, 7.1.0, 7.1.1, 7.2.0, 7.3.0, 7.4.0, 
7.5.0, 7.6.0, 7.6.1, 7.7.0, 7.8.0, 7.9.0, 7.10.0, 7.10.1, 7.10.2, 
7.11.0, 7.11.1, 7.12.0, 7.13.0, 7.14.0, 7.15.0, 7.16.0, 7.16.1)
ERROR: No matching distribution found for ipython==7.17.0 (from -r 
requirements.txt (line 134))

solved by:
in requirements.txt, on line 134 put the value "ipython==7.17.0" to 
"ipython==7.16.0"

4)
ERROR: After October 2020 you may experience errors when installing or 
updating packages. This is because pip will change the way that it 
resolves dependency conflicts.

We recommend you use --use-feature=2020-resolver to test your packages 
with the new resolver before it becomes the default.

dynamic-rest 1.9.6 requires inflection==0.3.1, but you'll have 
inflection 0.5.1 which is incompatible.

Solution:

pip install -r requirements.txt --upgrade --no-cache --no-cache-dir 
--use-feature=2020-resolver

5)

after executing:

pip install -e . --upgrade


ERROR: Could not find a version that satisfies the requirement 
ipython==7.17.0 (from GeoNode==3.1.0.dev1599573837) (from versions: 
0.10, 0.10.1, 0.10.2, 0.11, 0.12, 0.12.1, 0.13, 0.13.1, 0.13.2, 1.0.0, 
1.1.0, 1.2.0, 1.2.1, 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.3.1, 2.4.0, 2.4.1, 
3.0.0, 3.1.0, 3.2.0, 3.2.1, 3.2.2, 3.2.3, 4.0.0b1, 4.0.0, 4.0.1, 4.0.2, 
4.0.3, 4.1.0rc1, 4.1.0rc2, 4.1.0, 4.1.1, 4.1.2, 4.2.0, 4.2.1, 5.0.0b1, 
5.0.0b2, 5.0.0b3, 5.0.0b4, 5.0.0rc1, 5.0.0, 5.1.0, 5.2.0, 5.2.1, 5.2.2, 
5.3.0, 5.4.0, 5.4.1, 5.5.0, 5.6.0, 5.7.0, 5.8.0, 5.9.0, 5.10.0, 
6.0.0rc1, 6.0.0, 6.1.0, 6.2.0, 6.2.1, 6.3.0, 6.3.1, 6.4.0, 6.5.0, 
7.0.0b1, 7.0.0rc1, 7.0.0, 7.0.1, 7.1.0, 7.1.1, 7.2.0, 7.3.0, 7.4.0, 
7.5.0, 7.6.0, 7.6.1, 7.7.0, 7.8.0, 7.9.0, 7.10.0, 7.10.1, 7.10.2, 
7.11.0, 7.11.1, 7.12.0, 7.13.0, 7.14.0, 7.15.0, 7.16.0, 7.16.1)
ERROR: No matching distribution found for ipython==7.17.0 (from 
GeoNode==3.1.0.dev1599573837)


in "/opt/geonode/setup.cfg" put "ipython==7.17.0" to "ipython==7.16.0"

Result:

Successfully installed GeoNode coreapi-2.3.3 coreschema-0.0.4 
drf-extensions-0.6.0 drf-yasg-1.17.1 itypes-1.2.0 jinja2-2.11.2 
pip-20.2.2 ruamel.yaml-0.16.12 ruamel.yaml.clib-0.2.2 uritemplate-3.0.1



6)

ERROR: Could not find a version that satisfies the requirement 
pygdal==.* (from versions: 1.8.1.0, 1.8.1.1, 1.8.1.2, 1.8.1.3, 1.8.1.5, 
1.8.1.6, 1.9.2.0, 1.9.2.1, 1.9.2.3, 1.9.2.5, 1.9.2.6, 1.10.0.0, 
1.10.0.1, 1.10.0.3, 1.10.0.5, 1.10.0.6, 1.10.1.0, 1.10.1.1, 1.10.1.3, 
1.10.1.5, 1.10.1.6, 1.11.0.0, 1.11.0.1, 1.11.0.3, 1.11.0.5, 1.11.0.6, 
1.11.1.0, 1.11.1.1, 1.11.1.3, 1.11.1.5, 1.11.1.6, 1.11.2.1, 1.11.2.3, 
1.11.2.5, 1.11.2.6, 1.11.3.3, 1.11.3.5, 1.11.3.6, 1.11.4.3, 1.11.4.5, 
1.11.4.6, 1.11.5.3, 1.11.5.5, 1.11.5.6, 2.0.0.3, 2.0.0.5, 2.0.0.6, 
2.0.1.3, 2.0.1.5, 2.0.1.6, 2.0.2.3, 2.0.2.5, 2.0.2.6, 2.0.3.3, 2.0.3.5, 
2.0.3.6, 2.1.0.3, 2.1.0.5, 2.1.0.6, 2.1.1.3, 2.1.1.5, 2.1.1.6, 2.1.2.3, 
2.1.2.5, 2.1.2.6, 2.1.3.3, 2.1.3.5, 2.1.3.6, 2.2.0.3, 2.2.0.5, 2.2.0.6, 
2.2.1.3, 2.2.1.5, 2.2.1.6, 2.2.2.3, 2.2.2.5, 2.2.2.6, 2.2.3.3, 2.2.3.5, 
2.2.3.6, 2.2.4.3, 2.2.4.5, 2.2.4.6, 2.3.0.4, 2.3.0.5, 2.3.0.6, 2.3.1.4, 
2.3.1.5, 2.3.1.6, 2.3.2.4, 2.3.2.5, 2.3.2.6, 2.3.3.6, 2.4.0.4, 2.4.0.5, 
2.4.0.6, 2.4.1.4, 2.4.1.5, 2.4.1.6, 2.4.2.5, 2.4.2.6, 2.4.4.6, 3.0.0.5, 
3.0.0.6, 3.0.1.5, 3.0.1.6, 3.0.2.6, 3.0.3.6, 3.0.4.6, 3.1.0.6, 3.1.1.6, 
3.1.2.6)
ERROR: No matching distribution found for pygdal==.*

Solution:
install from apt:

"sudo apt install libgdal-dev"

with effect:

The following additional packages will be installed:
   autotools-dev default-libmysqlclient-dev gir1.2-harfbuzz-0.0 
hdf5-helpers icu-devtools libaec-dev libarmadillo-dev libarpack2-dev 
libblas-dev libboost-dev
   libboost1.65-dev libcurl4-gnutls-dev libdap-dev libdapserver7v5 
libepsilon-dev libfreexl-dev libfyba-dev libgeotiff-dev libgif-dev 
libglib2.0-bin
   libglib2.0-dev libglib2.0-dev-bin libgraphite2-3 libgraphite2-dev 
libharfbuzz-dev libharfbuzz-gobject0 libharfbuzz-icu0 libharfbuzz0b 
libhdf4-alt-dev
   libhdf5-cpp-100 libhdf5-dev libicu-dev libicu-le-hb-dev libicu-le-hb0 
libiculx60 libjbig-dev libjpeg-dev libjpeg-turbo8-dev libjpeg8-dev 
libjson-c-dev
   libkml-dev libkmlconvenience1 libkmlregionator1 libkmlxsd1 
liblapack-dev libltdl-dev liblzma-dev libminizip-dev libmysqlclient-dev 
libnetcdf-dev
   libogdi3.2-dev libopenjp2-7-dev libpcre16-3 libpcre3-dev libpcre32-3 
libpcrecpp0v5 libpng-dev libpng-tools libpoppler-dev 
libpoppler-private-dev
   libqhull-dev libqhull-r7 libspatialite-dev libsqlite3-dev libssl-dev 
libsuperlu-dev libtiff-dev libtiff5-dev libtiffxx5 libtool 
liburiparser-dev libwebp-dev
   libwebpdemux2 libwebpmux3 libxerces-c-dev libxml2-dev pkg-config 
unixodbc-dev uuid-dev

The following NEW packages will be installed:
   autotools-dev default-libmysqlclient-dev gir1.2-harfbuzz-0.0 
hdf5-helpers icu-devtools libaec-dev libarmadillo-dev libarpack2-dev 
libblas-dev libboost-dev
   libboost1.65-dev libcurl4-gnutls-dev libdap-dev libdapserver7v5 
libepsilon-dev libfreexl-dev libfyba-dev libgdal-dev libgeotiff-dev 
libgif-dev
   libglib2.0-bin libglib2.0-dev libglib2.0-dev-bin libgraphite2-3 
libgraphite2-dev libharfbuzz-dev libharfbuzz-gobject0 libharfbuzz-icu0 
libharfbuzz0b
   libhdf4-alt-dev libhdf5-cpp-100 libhdf5-dev libicu-dev 
libicu-le-hb-dev libicu-le-hb0 libiculx60 libjbig-dev libjpeg-dev 
libjpeg-turbo8-dev libjpeg8-dev
   libjson-c-dev libkml-dev libkmlconvenience1 libkmlregionator1 
libkmlxsd1 liblapack-dev libltdl-dev liblzma-dev libminizip-dev 
libmysqlclient-dev
   libnetcdf-dev libogdi3.2-dev libopenjp2-7-dev libpcre16-3 libpcre3-dev 
libpcre32-3 libpcrecpp0v5 libpng-dev libpng-tools libpoppler-dev
   libpoppler-private-dev libqhull-dev libqhull-r7 libspatialite-dev 
libsqlite3-dev libssl-dev libsuperlu-dev libtiff-dev libtiff5-dev 
libtiffxx5 libtool
   liburiparser-dev libwebp-dev libwebpdemux2 libwebpmux3 libxerces-c-dev 
libxml2-dev pkg-config unixodbc-dev uuid-dev

And again:

pip install pygdal=="`gdal-config --version`.*"

with outcome:

pip install pygdal=="`gdal-config --version`.*"


After all this, "paver start" starts up correctly.

do you think these changes are correct?




Thanks



More information about the geonode-users mailing list