Bash脚本错误NDK-Build
Bash script error NDK-Build
我正在尝试从这个官方存储库 ARToolkit5 GithubRepo.
在我的设备上获取 ARToolkit5 Android 示例和 运行
然后我需要 运行 ./build.sh
来构建库,但我在尝试对 Mac 执行 ./build.sh
时遇到此错误。
请问有人可以帮忙做什么吗?
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24124:40: error: use of undeclared
identifier 'mmap'
{ "mmap", (sqlite3_syscall_ptr)mmap, 0 },
^
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24160:22: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i=0; i<sizeof(aSyscall)/sizeof(aSyscall[0]); i++){
^~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24169:22: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i=0; i<sizeof(aSyscall)/sizeof(aSyscall[0]); i++){
^~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24196:20: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i=0; i<sizeof(aSyscall)/sizeof(aSyscall[0]); i++){
^~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24213:16: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i=0; i<ArraySize(aSyscall)-1; i++){
^~~~~~~~~~~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:8590:38: note: expanded from macro
'ArraySize'
#define ArraySize(X) ((int)(sizeof(X)/sizeof(X[0])))
^~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24217:14: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i++; i<ArraySize(aSyscall); i++){
^~~~~~~~~~~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:8590:38: note: expanded from macro
'ArraySize'
#define ArraySize(X) ((int)(sizeof(X)/sizeof(X[0])))
^~~
[armeabi-v7a] Compile arm : argsub_es <= gsub_mtx.c
[armeabi-v7a] Compile arm : argsub_es2 <= gsub_es2.c
[armeabi-v7a] Compile arm : argsub_es2 <= glStateCache2.c
[armeabi-v7a] Compile arm : argsub_es2 <= gsub_mtx.c
[armeabi-v7a] Compile arm : armulti <= arMultiFreeConfig.c
[armeabi-v7a] Compile arm : armulti <= arMultiGetTransMat.c
[armeabi-v7a] Compile arm : armulti <= arMultiGetTransMatStereo.c
[armeabi-v7a] Compile arm : armulti <= arMultiReadConfigFile.c
[armeabi-v7a] Compile arm : eden <= EdenError.c
[armeabi-v7a] Compile arm : eden <= EdenGLFont.c
[armeabi-v7a] Compile arm : eden <= EdenMath.c
[armeabi-v7a] Compile arm : eden <= EdenMessage.c
6 errors generated.
make: *** [obj/local/armeabi/objs/arvideo/__/__/lib/SRC/VideoAndroid/sqlite3.o] Error 1
make: *** Waiting for unfinished jobs....
Exiting ndk-build script abnormally terminated.
对于每个正在寻找答案的人:
找到文件 sqlite3.c 而不是找到这个文件在哪里(在顶部的某个地方)
_FILE_OFFSET_BITS=64定义然后删除那一行,
保存文件,你就可以开始了。
设置更安全
-DSQLITE_DISABLE_LFS
构建标志 - 它阻止 _FILE_OFFSET_BITS 在 SQLite 代码中定义。
我正在尝试从这个官方存储库 ARToolkit5 GithubRepo.
在我的设备上获取 ARToolkit5 Android 示例和 运行然后我需要 运行 ./build.sh
来构建库,但我在尝试对 Mac 执行 ./build.sh
时遇到此错误。
请问有人可以帮忙做什么吗?
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24124:40: error: use of undeclared
identifier 'mmap'
{ "mmap", (sqlite3_syscall_ptr)mmap, 0 },
^
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24160:22: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i=0; i<sizeof(aSyscall)/sizeof(aSyscall[0]); i++){
^~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24169:22: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i=0; i<sizeof(aSyscall)/sizeof(aSyscall[0]); i++){
^~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24196:20: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i=0; i<sizeof(aSyscall)/sizeof(aSyscall[0]); i++){
^~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24213:16: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i=0; i<ArraySize(aSyscall)-1; i++){
^~~~~~~~~~~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:8590:38: note: expanded from macro
'ArraySize'
#define ArraySize(X) ((int)(sizeof(X)/sizeof(X[0])))
^~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:24217:14: error: invalid application of
'sizeof' to an incomplete type 'struct unix_syscall []'
for(i++; i<ArraySize(aSyscall); i++){
^~~~~~~~~~~~~~~~~~~
jni/../../lib/SRC/VideoAndroid/sqlite3.c:8590:38: note: expanded from macro
'ArraySize'
#define ArraySize(X) ((int)(sizeof(X)/sizeof(X[0])))
^~~
[armeabi-v7a] Compile arm : argsub_es <= gsub_mtx.c
[armeabi-v7a] Compile arm : argsub_es2 <= gsub_es2.c
[armeabi-v7a] Compile arm : argsub_es2 <= glStateCache2.c
[armeabi-v7a] Compile arm : argsub_es2 <= gsub_mtx.c
[armeabi-v7a] Compile arm : armulti <= arMultiFreeConfig.c
[armeabi-v7a] Compile arm : armulti <= arMultiGetTransMat.c
[armeabi-v7a] Compile arm : armulti <= arMultiGetTransMatStereo.c
[armeabi-v7a] Compile arm : armulti <= arMultiReadConfigFile.c
[armeabi-v7a] Compile arm : eden <= EdenError.c
[armeabi-v7a] Compile arm : eden <= EdenGLFont.c
[armeabi-v7a] Compile arm : eden <= EdenMath.c
[armeabi-v7a] Compile arm : eden <= EdenMessage.c
6 errors generated.
make: *** [obj/local/armeabi/objs/arvideo/__/__/lib/SRC/VideoAndroid/sqlite3.o] Error 1
make: *** Waiting for unfinished jobs....
Exiting ndk-build script abnormally terminated.
对于每个正在寻找答案的人:
找到文件 sqlite3.c 而不是找到这个文件在哪里(在顶部的某个地方)
_FILE_OFFSET_BITS=64定义然后删除那一行,
保存文件,你就可以开始了。
设置更安全
-DSQLITE_DISABLE_LFS
构建标志 - 它阻止 _FILE_OFFSET_BITS 在 SQLite 代码中定义。