Error compiling spatialite 4.1.x in Debian

439 views
Skip to first unread message

Samuel Mesa

unread,
Aug 25, 2013, 8:34:42 PM8/25/13
to spatiali...@googlegroups.com
Hi, I get the following error compiling the source code in linux debian:

./configure --enable-epsg --enable-freexl --enable-geosadvanced --enable-geos --enable-proj --enable-geocallbacks --enable-mathsql CFLAGS=-I$HOME/usr/include LDFLAGS=-L$HOME/usr/lib

libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I/home/biosferadecolombia/usr/include -I/home/biosferadecolombia/usr/include -I../../src/headers -fvisibility=hidden -I/home/biosferadecolombia/usr/include -MT libsplite_la-virtualXL.lo -MD -MP -MF .deps/libsplite_la-virtualXL.Tpo -c virtualXL.c -o libsplite_la-virtualXL.o >/dev/null 2>&1
mv -f .deps/libsplite_la-virtualdbf.Tpo .deps/libsplite_la-virtualdbf.Plo
/bin/sh ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../.. -I/home/biosferadecolombia/usr/include -I/home/biosferadecolombia/usr/include -I../../src/headers   -fvisibility=hidden -I/home/biosferadecolombia/usr/include -MT libsplite_la-virtualfdo.lo -MD -MP -MF .deps/libsplite_la-virtualfdo.Tpo -c -o libsplite_la-virtualfdo.lo `test -f 'virtualfdo.c' || echo './'`virtualfdo.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I/home/biosferadecolombia/usr/include -I/home/biosferadecolombia/usr/include -I../../src/headers -fvisibility=hidden -I/home/biosferadecolombia/usr/include -MT libsplite_la-virtualfdo.lo -MD -MP -MF .deps/libsplite_la-virtualfdo.Tpo -c virtualfdo.c  -fPIC -DPIC -o .libs/libsplite_la-virtualfdo.o
mv -f .deps/libsplite_la-virtualXL.Tpo .deps/libsplite_la-virtualXL.Plo
/bin/sh ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../.. -I/home/biosferadecolombia/usr/include -I/home/biosferadecolombia/usr/include -I../../src/headers   -fvisibility=hidden -I/home/biosferadecolombia/usr/include -MT libsplite_la-virtualspatialindex.lo -MD -MP -MF .deps/libsplite_la-virtualspatialindex.Tpo -c -o libsplite_la-virtualspatialindex.lo `test -f 'virtualspatialindex.c' || echo './'`virtualspatialindex.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I/home/biosferadecolombia/usr/include -I/home/biosferadecolombia/usr/include -I../../src/headers -fvisibility=hidden -I/home/biosferadecolombia/usr/include -MT libsplite_la-virtualspatialindex.lo -MD -MP -MF .deps/libsplite_la-virtualspatialindex.Tpo -c virtualspatialindex.c  -fPIC -DPIC -o .libs/libsplite_la-virtualspatialindex.o
spatialite.c: In function 'testInvalidFP':
spatialite.c:22511: error: 'FP_NORMAL' undeclared (first use in this function)
spatialite.c:22511: error: (Each undeclared identifier is reported only once
spatialite.c:22511: error: for each function it appears in.)
spatialite.c:22511: error: 'FP_ZERO' undeclared (first use in this function)
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I/home/biosferadecolombia/usr/include -I/home/biosferadecolombia/usr/include -I../../src/headers -fvisibility=hidden -I/home/biosferadecolombia/usr/include -MT libsplite_la-virtualfdo.lo -MD -MP -MF .deps/libsplite_la-virtualfdo.Tpo -c virtualfdo.c -o libsplite_la-virtualfdo.o >/dev/null 2>&1
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I/home/biosferadecolombia/usr/include -I/home/biosferadecolombia/usr/include -I../../src/headers -fvisibility=hidden -I/home/biosferadecolombia/usr/include -MT libsplite_la-virtualspatialindex.lo -MD -MP -MF .deps/libsplite_la-virtualspatialindex.Tpo -c virtualspatialindex.c -o libsplite_la-virtualspatialindex.o >/dev/null 2>&1
make[3]: *** [libsplite_la-spatialite.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
mv -f .deps/libsplite_la-virtualspatialindex.Tpo .deps/libsplite_la-virtualspatialindex.Plo
mv -f .deps/libsplite_la-virtualfdo.Tpo .deps/libsplite_la-virtualfdo.Plo
mv -f .deps/libsplite_la-metatables.Tpo .deps/libsplite_la-metatables.Plo
make[3]: Leaving directory `/nfs/http10/biosferadecolombia/src/libspatialite-4.1.0/src/spatialite'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/nfs/http10/biosferadecolombia/src/libspatialite-4.1.0/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/nfs/http10/biosferadecolombia/src/libspatialite-4.1.0'
make: *** [all] Error 2


I appreciate any help to resolve this error.

Thanks,

Samuel Mesa.

a.fu...@lqt.it

unread,
Aug 26, 2013, 4:01:49 AM8/26/13
to spatiali...@googlegroups.com
Hi Samuel,

I'm sorry but I cannot confirm this issue.

I've pedantically replicated your example twice using both Debian
Squeeze
and Debian Wheezy (Virtual Machines, x86 32 bit).

on Squeeze:
-----------
wget
http://www.gaia-gis.it/gaia-sins/libspatialite-sources/libspatialite-4.1.0.tar.gz
tar zxvf libspatialite-4.1.0.tar.gz
./configure --enable-epsg --enable-freexl --disable-geosadvanced
--enable-geos --enable-proj --enable-geocallbacks --enable-mathsql
CFLAGS=-I$HOME/usr/include LDFLAGS=-L$HOME/usr/lib
make -> full success

(*) on Squeeze I've been forced to declare --disable-geosadvanced
because this system ships a really old GEOS version


on Wheezy:
----------
wget
http://www.gaia-gis.it/gaia-sins/libspatialite-sources/libspatialite-4.1.0.tar.gz
tar zxvf libspatialite-4.1.0.tar.gz
./configure --enable-epsg --enable-freexl --enable-geosadvanced
--enable-geos --enable-proj --enable-geocallbacks --enable-mathsql
CFLAGS=-I$HOME/usr/include LDFLAGS=-L$HOME/usr/lib
make -> full success

So standing things I can simply suppose that there is some unknown
problem specifically affecting your local system.


> spatialite.c: In function 'testInvalidFP':
> spatialite.c:22511: error: 'FP_NORMAL' undeclared (first use in this
> function)
> spatialite.c:22511: error: (Each undeclared identifier is reported
> only once
> spatialite.c:22511: error: for each function it appears in.)
> spatialite.c:22511: error: 'FP_ZERO' undeclared (first use in this
> function)

please note: both FP_NORMAL and FP_ZERO are expected to be declared
in /usr/include/math.h; and spatialite.c does actually requires
#include <math.h>

bye Sandro

--
Il messaggio e' stato analizzato alla ricerca di virus o
contenuti pericolosi da MailScanner, ed e'
risultato non infetto.

Brad Hards

unread,
Aug 26, 2013, 4:22:37 AM8/26/13
to spatiali...@googlegroups.com
On Sun, 25 Aug 2013 05:34:42 PM Samuel Mesa wrote:
> /home/biosferadecolombia/usr/include
What is in this directory?

Do you have some special / strange C or C++ library headers installed? In
particular, is there a non-standard cmath or math.h header in the include
path?

Brad


Samuel Mesa

unread,
Sep 18, 2014, 3:41:12 PM9/18/14
to spatiali...@googlegroups.com
Sorry for opening this post, after trying again, I have managed to compile SpatiaLite v4.2 disabling option --disable-mathsql.

I do not know what features I lose by disabling this option?


regards,

Samuel Mesa.

linux...@gmail.com

unread,
Sep 19, 2014, 4:22:25 AM9/19/14
to spatiali...@googlegroups.com
The Debian packaging for SpatiaLite 4.2.0 contains a patch to link libm which likely addresses the issue you're running into:

http://anonscm.debian.org/cgit/pkg-grass/spatialite.git/tree/debian/patches/03-link-m.patch?h=experimental

We're too late to get a transition for SpatiaLite 4.2.0 on the road, so the next Debian stable release will contains SpatiaLite 4.1.1.

a.fu...@lqt.it

unread,
Sep 22, 2014, 3:12:12 PM9/22/14
to spatiali...@googlegroups.com
On Thu, 18 Sep 2014 12:41:12 -0700 (PDT), Samuel Mesa wrote:
> Sorry for opening this post, after trying again, I have managed to
> compile SpatiaLite v4.2 disabling option --disable-mathsql.
>
> I do not know what features I lose by disabling this option?
>

Hi Samuel,

by disabling "mathsql" you'll implicitly suppress many useful
trigonometric, logarithmic and statistic SQL functions:

ACOS(), ASIN(), ATAN(), CEIL(), COS(), COT(), DEGREES(),
EXP(), FLOOR(), LOG(), LOG2(), LOG10(), PI(), POW(),
RADIANS(), SIGN(), SIN(), SQRT(), STDDEV_POP(),
STDDEV_SAMP(), VAR_POP(), VAR_SAMP(), TAN()

bye Sandro

Yosuke Kimura

unread,
Oct 3, 2015, 11:25:33 PM10/3/15
to SpatiaLite Users
Hi,

I saw the same issue today (2015-10-03), and turned out that my version of gcc was old, 4.1.2.  manpage for fpclassify for the system said I have to not only have -lm to compile but need -std=c99 to compile.  So I set CFLAGS to include -std=c99, it seems to compile. 

a.fu...@lqt.it

unread,
Oct 4, 2015, 6:33:08 AM10/4/15
to spatiali...@googlegroups.com
Hi Yosuke,

if I'm not wrong gcc 4.1.2 was released on February 2007, about
eight/nine years ago.
Debian 8.0 Jessie currently ships gcc 4.9.2, Fedora 22 gcc 5.1.1

I'm not really sure if a 2007 obsolete version could still be
considered representative of what "modern" gcc is.

bye Sandro

Reply all
Reply to author
Forward
0 new messages