- install postgres 14.1 from source to cent 7.9 - end0tknr's kipple - web写経開発
- install postgres 9.6 & postgis 2.3 & mapserver & mapserver 7.0 - end0tknr's kipple - web写経開発
先程の上記entryの続き & 前回2017年のinstall postgis & mapserver の2022年版です。
2017年に実施した際と異なり、 compilerが依存moduleを上手く見つけられず、 「from source」とタイトルに記載しておきながら、「yum」も使用しており、 結果は怪しい気がします。
目次
postgis
Prerequisites
geos
$ wget http://download.osgeo.org/geos/geos-3.10.1.tar.bz2 $ tar -xvf geos-3.10.1.tar.bz2 $ cd geos-3.10.1 $ less INSTALL.md $ mkdir build $ cd build $ cmake -DCMAKE_BUILD_TYPE=Release .. $ make $ make check $ sudo make install $ sudo vi /etc/ld.so.conf /usr/local/lib64 ## ADD $ sudo ldconfig
proj
$ wget --no-check-certificate \ https://www.sqlite.org/2022/sqlite-autoconf-3370200.tar.gz $ tar -xvf sqlite-autoconf-3370200.tar.gz $ cd sqlite-autoconf-3370200 $ ./configure \ --enable-editline --enable-readline --enable-session --enable-debug $ make $ sudo make install
$ sudo yum install libtiff-devel
$ wget --no-check-certificate \ https://download.osgeo.org/proj/proj-8.2.0.tar.gz $ tar -xvf proj-8.2.0.tar.gz $ cd proj-8.2.0 $ export SQLITE3_LIBS="-L/usr/local/lib -lsqlite3" $ ./configure $ make $ make check $ sudo make install
GDAL
wget https://github.com/OSGeo/gdal/releases/download/v3.4.1/gdal-3.4.1.tar.gz tar -xvf gdal-3.4.1.tar.gz cd gdal-3.4.1 ./configure --without-sqlite3 ※1 make sudo make install
※1 make時に以下のエラーが表示され、※2を参考に sqlite の configure オプションを変更したものの、 解消しなかった為、「--without-sqlite3」を付加しています。
$ make : /home/end0tknr/tmp/gdal-3.4.1/.libs/libgdal.so: undefined reference to `sqlite3_column_origin_name' /home/end0tknr/tmp/gdal-3.4.1/.libs/libgdal.so: undefined reference to `sqlite3_column_table_name' collect2: error: ld returned 1 exit status make[1]: *** [gdalinfo] Error 1 make[1]: Leaving directory `/home/end0tknr/tmp/gdal-3.4.1/apps' make: *** [apps-target] Error 2
※2 - refer to https://www.sqlite.org/compile.html#enable_column_metadata - https://ytyaru.hatenablog.com/entry/2021/03/05/000000
JSON-C
$ yum install json-c-devel $ wget https://github.com/json-c/json-c/archive/refs/tags/json-c-0.15-20200726.tar.gz less README.md $ mkdir json-c-build $ cd json-c-build $ cmake .. $ make $ make test $ sudo make install
libxml2-devel
$ sudo yum install libxml2-devel
postgis
$ wget --no-check-certificate \ https://download.osgeo.org/postgis/source/postgis-3.2.0.tar.gz $ tar -xvf postgis-3.2.0.tar.gz $ cd postgis-3.2.0 $ ./configure \ --with-pgsql=/usr/local/pgsql/bin/pg_config \ --with-pgconfig=/usr/local/pgsql/bin/pg_config \ --without-protobuf $ make $ sudo make install $ /usr/local/pgsql/bin/createdb -U postgres -E utf8 gis_test $ /usr/local/pgsql/bin/psql -U postgres -d gis_test \ -f /usr/local/pgsql/share/contrib/postgis-3.2/postgis.sql $ /usr/local/pgsql/bin/psql -U postgres -d gis_test \ -f /usr/local/pgsql/share/contrib/postgis-3.2/spatial_ref_sys.sql
mapsserver
http://mapserver.org/installation/unix.html
Prerequisites
libpng
$ wget --no-check-certificate \ $ https://download.sourceforge.net/libpng/libpng-1.6.37.tar.gz $ tar -xvf libpng-1.6.37.tar.gz $ cd libpng-1.6.37 $ ./configure LDFLAGS="-L/usr/local/lib -lz" ※1 $ make $ make check $ sudo make install
※1 make時に以下のerrorとなる為、LDFLAGSを追加
$ make : ./.libs/libpng16.so: undefined reference to `inflateValidate' collect2: error: ld returned 1 exit status make[1]: *** [pngfix] Error 1 make[1]: Leaving directory `/home/end0tknr/tmp/libpng-1.6.37' make: *** [all] Error 2
freetype
$ wget --no-check-certificate \ https://download.savannah.gnu.org/releases/freetype/freetype-2.11.1.tar.gz $ tar -xvf freetype-2.11.1.tar.gz $ cd freetype-2.11.1 $ ./configure $ make $ sudo make install
libjpeg
$ wget http://www.ijg.org/files/jpegsrc.v9d.tar.gz tar -xvf jpegsrc.v9d.tar.gz cd jpeg-9d ./configure make make check sudo make install
FriBidi
sudo yum install libtool
$ wget https://github.com/fribidi/fribidi/archive/refs/tags/v1.0.11.tar.gz $ tar -xvf v1.0.11.tar.gz $ cd fribidi-1.0.11 $ ./autogen.sh $ ./configure $ make $ make check $ sudo make install
cario
$ wget --no-check-certificate \ https://www.cairographics.org/releases/cairo-1.16.0.tar.xz $ tar -xvf cairo-1.16.0.tar.xz $ cd cairo-1.16.0 $ ./configure : checking for cairo's PNG functions feature... configure: WARNING: Could not find libpng in the pkg-config search path checking whether cairo's PNG functions feature could be enabled... no configure: error: recommended PNG functions feature could not be enabled $ sudo yum install libpng-devel ※1 $ sudo yum install libpng-pixman $ sudo yum install freetype-devel $ ./configure $ make $ make check ※2 $ sudo make install
※1 libpng等は、sourceから install 済でしたが、 cairoがこれを見つけられない為、sudo yum install しました。
※2 make checkでは、failがありましたが、無視して make installしました。
harfbuzz
2022/1時点の最新は、ver.3.2.0ですが、make時にerrorとなった為、 ver.2系を使用しています。
$ wget https://github.com/harfbuzz/harfbuzz/archive/refs/tags/2.9.1.tar.gz $ cd harfbuzz-3.2.0 $ ./autogen.sh $ ./configure $ make $ make check $ sudo make install
mapserver
$ sudo yum install harfbuzz-devel $ wget --no-check-certificate \ https://download.osgeo.org/mapserver/mapserver-7.6.4.tar.gz $ tar -zxvf mapserver-7.6.4.tar.gz $ cd mapserver-7.6.4 $ less INSTALL.CMAKE $ mkdir build $ cd build $ cmake -DCMAKE_PREFIX_PATH=/usr/local/pgsql \ -DWITH_PROTOBUFC=0 \ -DWITH_GIF=0 \ -DWITH_FCGI=0 \ .. $ make $ sudo make install