我有一個小麻煩與構建現有的項目在:Spatialite爲Android NDK構建
http://code.google.com/p/spatialite-android/
我使用的Win7和Cygwin
我通過使用「GIT的Windows克隆獲得源代碼」。將其放置到:C:\ TEMP \ ECLIPSE \工作區\ SA1
我下載了以下內容:
- http://download.osgeo.org/geos/geos-3.2.2.tar.bz2
- ftp://ftp.remotesensing.org/proj/proj-4.7.0.tar.gz
我把這些在:C:\ TEMP \ ECLIPSE \ workspace \ SA1 \ spatialite-android-library \ jni
然後啓動Cygwin並執行以下操作:
$ cd c:/temp/eclipse/workspace/sa1/spatialite-android-library/jni
$ tar xvjf geos-3.2.2.tar.bz2
$ cd geos-3.2.2
$ ./configure --build=x86_64-pc-linux-gnu --host=arm-linux-eabi
在Cygwin之外,我在一個編輯器中打開:C:\ temp \ ECLIPSE \ workspace \ SA1 \ spatialite-android-library \ jni \ geos-3.2.2 \ source \ headers \ geos \ platform.h 並作出一些改動使其類似於下面
/* 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
保存並關閉
然後我回去Cygwin和執行以下操作:
$ cd ..
$ tar xvzf proj-4.7.0.tar.gz
$ cd proj-4.7.0
$ ./configure --build=x86_64-pc-linux-gnu --host=arm-linux-eabi
$ cd ..
$ /cygdrive/c/android-ndk-r8/ndk-build
沿與++編譯線以下編譯
StaticLibrary : libiconv.a
StaticLibrary : libproj.a
但是同時它會通過GEOS談到了以下錯誤:
Compile++ thumb : geos <= TaggedLineSegment.cpp
Compile++ thumb : geos <= TaggedLinesSimplifier.cpp
Compile++ thumb : geos <= TaggedLineString.cpp
Compile++ thumb : geos <= TaggedLineStringSimplifier.cpp
Compile++ thumb : geos <= TopologyPreservingSimplifier.cpp
Compile++ thumb : geos <= Assert.cpp
Compile++ thumb : geos <= GeometricShapeFactory.cpp
Compile++ thumb : geos <= math.cpp
Compile++ thumb : geos <= Profiler.cpp
Prebuilt : libgnustl_static.a <= <NDK>/sources/cxx-stl/gnu-libstdc++/libs/armeabi/
StaticLibrary : libgeos.a
make: execvp: /cygdrive/c/android-ndk-r8/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-ar: Argument list too long
make: *** [/cygdrive/c/temp/eclipse/workspace/sa1/spatialite-android-library/obj/local/armeabi/libgeos.a] Error 127
[email protected] /cygdrive/c/temp/eclipse/workspace/sa1/spatialite-android-library/jni
$
有人可以與我如何可以解決此幫助?任何幫助非常感謝!