rgdal compile confusion
On Sat, 11 Aug 2018, Roger Bivand wrote:
The gcc you have is ancient; I would guess that your GDAL was not built with it.
Roger, On Slackware everything is built from source other than a few applications that are repacked by the SlackBuild.org maintainers from .deb or .rpm packages.
What happens if you install GDAL from source? Very likely the decision in GDAL to go with CXX11 was premature, but tardy platforms need forcing too (typical problem on CentOS and RHEL too).
Slackware stays back from the bleeding edge and upgrades slowly so the distribution remains stable.
Could you post on R-sig-geo - there may be someone there in your situation.
Moved to the mail list with this response. Thanks, Rich ---------- Original message -----------
Please share your thoughts on what might be going on here.
* installing *source* package ?rgdal? ...
** package ?rgdal? successfully unpacked and MD5 sums checked
configure: R_HOME: /usr/lib/R
configure: CC: gcc
configure: CXX: g++
configure: C++11 support available
configure: rgdal: 1.3-4
checking for /usr/bin/svnversion... yes
configure: svn revision: 766
checking for gdal-config... /usr/bin/gdal-config
checking gdal-config usability... yes
configure: GDAL: 2.3.0
checking C++11 support for GDAL >= 2.3.0... yes
checking GDAL version >= 1.11.4... yes
checking gdal: linking with --libs only... no
checking gdal: linking with --libs and --dep-libs... no
In file included from /usr/include/gdal.h:45:0,
from gdal_test.cc:1:
/usr/include/cpl_port.h:187:6: error: #error Must have C++11 or newer.
# error Must have C++11 or newer.
^
In file included from /usr/include/gdal.h:49:0,
from gdal_test.cc:1:
/usr/include/cpl_minixml.h:202:47: error: expected template-name before '<'
token
class CPLXMLTreeCloser: public std::unique_ptr<CPLXMLNode,
CPLXMLTreeCloserDeleter>
^
/usr/include/cpl_minixml.h:202:47: error: expected '{' before '<' token
/usr/include/cpl_minixml.h:202:47: error: expected unqualified-id before
'<' token
In file included from /usr/include/ogr_api.h:45:0,
from /usr/include/gdal.h:50,
from gdal_test.cc:1:
/usr/include/ogr_core.h:79:28: error: expected '}' before end of line
/usr/include/ogr_core.h:79:28: error: expected declaration before end of
line
In file included from /usr/include/gdal.h:45:0,
from gdal_test.cc:1:
/usr/include/cpl_port.h:187:6: error: #error Must have C++11 or newer.
# error Must have C++11 or newer.
^
In file included from /usr/include/gdal.h:49:0,
from gdal_test.cc:1:
/usr/include/cpl_minixml.h:202:47: error: expected template-name before '<'
token
class CPLXMLTreeCloser: public std::unique_ptr<CPLXMLNode,
CPLXMLTreeCloserDeleter>
^
/usr/include/cpl_minixml.h:202:47: error: expected '{' before '<' token
/usr/include/cpl_minixml.h:202:47: error: expected unqualified-id before
'<' token
In file included from /usr/include/ogr_api.h:45:0,
from /usr/include/gdal.h:50,
from gdal_test.cc:1:
/usr/include/ogr_core.h:79:28: error: expected '}' before end of line
/usr/include/ogr_core.h:79:28: error: expected declaration before end of
line
configure: Install failure: compilation and/or linkage problems.
configure: error: GDALAllRegister not found in libgdal.
ERROR: configuration failed for package ?rgdal?
* removing ?/usr/lib/R/library/rgdal?
* restoring previous ?/usr/lib/R/library/rgdal?
The downloaded source packages are in
?/tmp/RtmpVGIz3Q/downloaded_packages?
Updating HTML index of packages in '.Library'
Making 'packages.html' ... done
Warning message:
In install.packages("rgdal") :
installation of package ?rgdal? had non-zero exit status
Installed here are:
gcc-5.5.0-i586-1_slack14.2
gcc-g++-5.5.0-i586-1_slack14.2
gcc-gfortran-5.5.0-i586-1_slack14.2
gcc-gnat-5.5.0-i586-1_slack14.2
gcc-go-5.5.0-i586-1_slack14.2
gcc-java-5.5.0-i586-1_slack14.2
gcc-objc-5.5.0-i586-1_slack14.2
gccmakedep-1.0.3-noarch-1
and
gdal-2.3.0-i586-1_SBo
Regards,
Rich