You are not logged in.
I'm trying to make Spatialite PKGBUILD (http://www.gaia-gis.it/spatialite/).
I have done:
./configure \
--with-geos-include=/usr/include/geos/ \
--with-geos-lib=/usr/libthen I get this compilation error:
==> Starting make...
Making all in headers
make[1]: Entering directory `/home/pietro/builds/mypkg/spatialite/libspatialite/src/libspatialite-amalgamation-2.3.1/headers'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/pietro/builds/mypkg/spatialite/libspatialite/src/libspatialite-amalgamation-2.3.1/headers'
make[1]: Entering directory `/home/pietro/builds/mypkg/spatialite/libspatialite/src/libspatialite-amalgamation-2.3.1'
/bin/sh ./libtool --tag=CC --mode=link gcc -D_LARGE_FILE=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE=1 -DSQLITE_ENABLE_RTREE=1 -march=core2 -O2 -pipe -version-info 2:3:1 -Wl,--hash-style=gnu -Wl,--as-needed -o libspatialite.la -rpath /usr/local/lib spatialite.lo sqlite3.lo /usr/lib/libgeos_c.la /usr/lib/libgeos.la /usr/local/lib/libproj.la -lm -lstdc++ -lpthread -ldl
libtool: link: cannot find the library `/usr/lib/libgeos_c.la' or unhandled argument `/usr/lib/libgeos_c.la'
make[1]: *** [libspatialite.la] Error 1
make[1]: Leaving directory `/home/pietro/builds/mypkg/spatialite/libspatialite/src/libspatialite-amalgamation-2.3.1'
make: *** [all-recursive] Error 1
==> ERROR: Build Failed.
Aborting...If I look in my /usr/lib I have:
$ ls /usr/lib/libgeos*
-rwxr-xr-x 1 root root 1915763 Apr 4 21:49 /usr/lib/libgeos-3.2.1.so
-rw-r--r-- 1 root root 4654500 Apr 4 21:49 /usr/lib/libgeos.a
-rw-r--r-- 1 root root 179536 Apr 4 21:49 /usr/lib/libgeos_c.a
lrwxrwxrwx 1 root root 18 Apr 4 21:49 /usr/lib/libgeos_c.so -> libgeos_c.so.1.6.1
lrwxrwxrwx 1 root root 18 Apr 4 21:49 /usr/lib/libgeos_c.so.1 -> libgeos_c.so.1.6.1
-rwxr-xr-x 1 root root 140568 Apr 4 21:49 /usr/lib/libgeos_c.so.1.6.1
lrwxrwxrwx 1 root root 16 Apr 4 21:49 /usr/lib/libgeos.so -> libgeos-3.2.1.soHow to solve?
Last edited by pietro (2010-05-31 12:27:49)
Offline
You could replace
"libgeos_c.la" with "libgeos_c.a"
"libgeos.la" with "libgeos.a"
"libproj.la" with "libproj.a"
in the Makefile generated by the configure script, using sed.
I tried it with this PKGBUILD
pkgname=libspatialite-amalgamation
pkgver=2.3.1
pkgrel=1
pkgdesc="a complete Spatial DBMS in a nutshell"
arch=('i686' 'x86_64')
depends=('geos' 'proj')
license=('MPL v1.1')
url="http://www.gaia-gis.it/spatialite/"
source=(http://www.gaia-gis.it/spatialite/$pkgname-$pkgver.tar.gz)
build() {
cd $srcdir/$pkgname-$pkgver
./configure --prefix=/usr \
--with-geos-lib=/usr/lib \
--with-geos-include=/usr/include/geos \
--with-proj-lib=/usr/lib \
--with-proj-include=/usr/include
sed 's/libgeos_c.la/libgeos_c.a/g' Makefile > Makefile.tmp
sed 's/libgeos.la/libgeos.a/g' Makefile.tmp > Makefile
sed 's/libproj.la/libproj.a/g' Makefile > Makefile.tmp
mv Makefile.tmp Makefile
rm Makefile.tmp
make DESTDIR=${pkgdir} install || return 1
}
md5sums=('3e1b15a55a0bd511e6437fdb604a10b1')it compiles and the package could be created, but makepkg gives this when it tries to stripp debugging symbols
-> Stripping debugging symbols from binaries and libraries...
/usr/bin/strip:usr/lib/libspatialite.a(libgeos_c.a): Unable to recognise the format of file: File format not recognized
/usr/bin/strip:usr/lib/libspatialite.a(libgeos.a): Unable to recognise the format of file: File format not recognized
/usr/bin/strip:usr/lib/libspatialite.a(libproj.a): Unable to recognise the format of file: File format not recognizedI've not tested if the package works. I don't know what libspatialite is. ![]()
..but maybe my PKGBUILD helps you...
Offline
I solve the problem recompiling geos and proj with libtool option activate, in this way I have *.la files and "makepkg -s" now works without problems.
Thank you SiD for your reply, but I don't think your solution could work because if I look to my library now I have
-rwxr-xr-x 1 pietro users 4282599 May 31 14:45 libgeos-3.2.1.so
-rw-r--r-- 1 pietro users 15594336 May 31 14:45 libgeos.a
-rw-r--r-- 1 pietro users 301686 May 31 14:45 libgeos_c.a
-rwxr-xr-x 1 pietro users 947 May 31 14:45 libgeos_c.la
lrwxrwxrwx 1 pietro users 18 May 31 14:45 libgeos_c.so -> libgeos_c.so.1.6.1
lrwxrwxrwx 1 pietro users 18 May 31 14:45 libgeos_c.so.1 -> libgeos_c.so.1.6.1
-rwxr-xr-x 1 pietro users 213059 May 31 14:45 libgeos_c.so.1.6.1
-rwxr-xr-x 1 pietro users 921 May 31 14:45 libgeos.la
lrwxrwxrwx 1 pietro users 16 May 31 14:45 libgeos.so -> libgeos-3.2.1.so
-rw-r--r-- 1 pietro users 697910 May 31 15:01 libproj.a
-rwxr-xr-x 1 pietro users 813 May 31 15:01 libproj.la
lrwxrwxrwx 1 pietro users 16 May 31 15:01 libproj.so -> libproj.so.0.6.6
lrwxrwxrwx 1 pietro users 16 May 31 15:01 libproj.so.0 -> libproj.so.0.6.6
-rwxr-xr-x 1 pietro users 309695 May 31 15:01 libproj.so.0.6.6As you can see, libgeos_c.a seem to be different from libgeos_c.la, so I don't think you could just replace with sed...
Last edited by pietro (2010-05-31 13:42:41)
Offline
Ah ok, was just an idea. ;-)
Offline
Thanks Pietro!
I have the same problem, so, download pkgbuilds, activate libtools option and recompile Geos & Proj works fine.
Offline
Anybody managed to compile this set of packages recently? I am having problems to get Spatialite (AUR) and Proj.4 (from official) compiled together here on Arch x86_64. Proj.4 fails to compile with/without libtool, and without Proj.4 headers, Spatialite won't compile.
@pietro: Please share your PKGBUILDs if have them working.
“Never regard study as a duty, but as the enviable opportunity to learn to know the liberating influence of beauty in the realm of the spirit for your own personal joy and to the profit of the community to which your later work belongs.”
Offline