1

I'm trying to build the following project for Android:

http://code.google.com/p/spatialite-android/

Does anyone know why there may be errors when running ndk-build for LineIntersector.cpp?

jni/geos-3.2.2/source/algorithm/LineIntersector.cpp:223: error: expected unqualified-id before '(' token

I'm running try to compile this on a mac and I'm an NDK newbie. Here is my configure that I run in the geos root

./configure --build=i686-android-linux-gnu --host=arm-linux-eabi

The error appears to be with the ISNAN function

4

2 回答 2

1

目前你只能在 Ubuntu 上构建。您运行的步骤./configure是其他平台上的问题。我在下载部分发布了最新的二进制文件。您可以打开 apk 并复制 .so 文件。

我能够通过编辑 /source/headers/geos/platform.h 在我的 Mac 上构建 geos

/* Set to 1 if you have `int64_t' type */
/* #undef HAVE_INT64_T_64 */

/* Set to 1 if `long int' is 64 bits */
/* #undef HAVE_LONG_INT_64 */

/* Set to 1 if `long long int' is 64 bits */
/* #undef HAVE_LONG_LONG_INT_64 */

/* Set to 1 if you have ieeefp.h */
/* #undef HAVE_IEEEFP_H */

/* Has finite */
#define HAVE_FINITE 1

/* Has isfinite */
/* #undef HAVE_ISFINITE */

/* Has isnan */
#define HAVE_ISNAN 1
于 2012-02-27T01:45:36.093 回答
1

我已经在 Win7,cygwin 环境下成功构建了这个项目,看看: http ://code.google.com/p/spatialite-android/issues/detail?id=3

于 2012-02-27T03:21:31.190 回答