Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
strings.h中的Android NDK错误,可能是由于大小错误\u t_Android_Android Ndk - Fatal编程技术网

strings.h中的Android NDK错误,可能是由于大小错误\u t

strings.h中的Android NDK错误,可能是由于大小错误\u t,android,android-ndk,Android,Android Ndk,我在使用NDK为Android构建X11时遇到问题。我正在使用最新的NDK和droid包装器。我已经更新了我正在构建的大多数东西,但它实际上只是添加了一系列编译器选项。我让它打印出它在下面使用的选项。我已经走得很远了,但是我在构建一些库时遇到了这个问题: CC AuDispose.lo droid-debug(compile): /opt/android-ndk-r7/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/b

我在使用NDK为Android构建X11时遇到问题。我正在使用最新的NDK和droid包装器。我已经更新了我正在构建的大多数东西,但它实际上只是添加了一系列编译器选项。我让它打印出它在下面使用的选项。我已经走得很远了,但是我在构建一些库时遇到了这个问题:

 CC     AuDispose.lo
droid-debug(compile): /opt/android-ndk-r7/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc -DHAVE_CONFIG_H -I. -I./include -I/home/rmason/androix/usr/include -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-aliasing -Wbad-function-cast -Wformat=2 -Wold-style-definition -Wdeclaration-after-statement -I/home/rmason/androix/usr/include -MT AuDispose.lo -MD -MP -MF .deps/AuDispose.Tpo -c AuDispose.c -fPIC -DPIC -o .libs/AuDispose.o -I/opt/android-ndk-r7/platforms/android-8/arch-arm/usr/include -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -DANDROID -DSK_RELEASE -DNDEBUG -UDEBUG -march=armv5te -mtune=xscale -msoft-float -mthumb-interwork -fpic -fno-exceptions -ffunction-sections -funwind-tables -fstack-protector -fmessage-length=0
In file included from /opt/android-ndk-r7/platforms/android-8/arch-arm/usr/include/stdlib.h:42,
             from AuDispose.c:34:
/opt/android-ndk-r7/platforms/android-8/arch-arm/usr/include/strings.h:47: error: expected declaration specifiers or '...' before numeric constant
/opt/android-ndk-r7/platforms/android-8/arch-arm/usr/include/strings.h:47: error:     conflicting types for 'memset'
AuDispose.c: In function 'XauDisposeAuth':
AuDispose.c:44: error: too many arguments to function 'memset'
make[1]: *** [AuDispose.lo] Error 1
make[1]: Leaving directory `/home/rmason/androix/lib/libXau'
make: *** [install] Error 2
我看字符串。h和第47行是:

void     bzero(void *, size_t);
我见过其他人对这种类型的线有问题,因为size\u t是错误的值。有些人通过用内核的定义替换size\u t来修复它。我的猜测是,我包含事物的顺序正在冲击我真正需要的一些定义

如果人们喜欢整个故事,这里有一点背景:

我正在尝试使用稍微修改过的droid包装器进行构建]。我制作了一个脚本(在我的github repo中称为androix buildscript)来构建整个shebang。它检查所有内容并构建所有内容。现在我得到了以下结果:

  • 成功:util/macros
  • 成功:proto/xproto
  • 成功:lib/libxtrans
  • 成功:xcb/proto
  • 成功:xcb/pthread存根
  • 失败:lib/libXau#strings.h错误
  • 失败:xcb/libxcb#缺少Xau
  • 成功:proto/xextproto
  • 成功:proto/kbproto
  • 成功:proto/inputproto
  • 失败:lib/libX11#缺少libxcb
  • 失败:lib/libxkbfile#缺少X11
  • 失败:app/xkbcomp#/xkbparse.c。。。配置:错误:交叉编译时无法检查文件是否存在make:*没有使目标“安装”的规则。停下来
  • 成功:xkeyboard配置
  • 成功:mesa/drm
  • 成功:proto/fixesproto
  • 成功:proto/damageproto
  • 成功:proto/xcmisproto
  • 成功:proto/bigreqsproto
  • 成功:原型/复合原型
  • 成功:proto/recordproto
  • 成功:proto/scrnsaverproto
  • 成功:proto/resourceproto
  • 失败:freetype#仍在努力找出最佳的建造方式,托多
  • 成功:lib/libfontenc
  • 失败:lib/libXfont#缺少fontsproto、TODO
  • 失败:lib/libXdmcp#与strings.h libXau问题类似
  • 失败:pixman#Elf32_auxv_t的外观不同,但可能与字符串相同。h大小的问题。它们都是面向定义的问题

感谢您抽出时间查看此内容。我真的被难住了。

我通过在字符串中注释行来完成制作。h显示了错误。另外,我在AuDispose.c中使用了memset而不是bzero。

我通过在显示错误的strings.h中注释行来完成make。另外,我在AuDispose.c中使用了memset,而不是bzero