ls -l on Android device

Tom Spear speeddymon at gmail.com
Mon Feb 1 14:55:40 UTC 2010


Thanks

Tom



On Mon, Feb 1, 2010 at 6:37 AM, Denys Vlasenko <vda.linux at googlemail.com> wrote:
> On Mon, Feb 1, 2010 at 7:11 AM, Tom Spear <speeddymon at gmail.com> wrote:
>>>>> Ok. Let's dig deeper. Earlier you said that busybox id gives this:
>>>>>
>>>>> $ ./busybox id
>>>>> uid=2000 gid=2000 groups=1003,1004,1007,1011,1015,3001,3002,3003
>>>>>
>>>>> Looking at the source, "id" with no parameters ends up here
>>>>> in id.c:
>>>>>
>>>>> static int print_group(gid_t id, const char *prefix)
>>>>> {
>>>>>        return print_common(id, gid2group(id), prefix);
>>>>> }
>>>>>
>>>>> static int print_user(uid_t id, const char *prefix)
>>>>> {
>>>>>        return print_common(id, uid2uname(id), prefix);
>>>>> }
>>>>>
>>>>> Let's follow uid2uname: it's in libbb/bb_pwd.c:
>>>>>
>>>>> char* FAST_FUNC uid2uname(uid_t uid)
>>>>> {
>>>>>        struct passwd *pw = getpwuid(uid);
>>>>>        return (pw) ? pw->pw_name : NULL;
>>>>> }
>>>>>
>>>>> As you see, it uses the very same getpwuid() call.
>>>>> Please instrument it by adding this line:
>>>>>
>>>>>        struct passwd *pw = getpwuid(uid);
>>>>> bb_error_msg("getpwuid(%d):%p", (int)uid, pw);
>>>>>        return (pw) ? pw->pw_name : NULL;
>>>>>
>>>>> recompile busybox, making sure CONFIG_USE_BB_PWD_GRP
>>>>> and CONFIG_USE_BB_SHADOW are off, then re-run
>>>>> "./busybox id". What does it print? Give the same uid to
>>>>> "/system/bin/test <UID> root" - does it resolve it?
>>
>> Hi all, I have tested this tonight, as promised.
>>
>> Here are the results.
>>
>> Firstly, I noticed that after I recompiled busybox, with the line
>> inserted into libbb/bb_pwd.c, the normal output of the id command
>> changed. Previously it included a group list, however now it does not:
>>
>> [tom at Speeddy busybox-1.15.3]$ adb shell
>> # su shell
>> $ /system/busybox id
>> id: getpwuid(2000):(nil)
>> uid=2000 gid=2000
>
> Aha. So getpwuid(2000) *fails*
>
>> Second thing is that, unless I missed a step somewhere, the test
>> program doesn't compile against busybox headers, so therefore the
>> change requested does not affect the output of it either way
>>
>> $ bbtest 2000 shell
>> pw_name:shell
>> pw_passwd:(null)
>> pw_uid:2000
>> pw_gid:2000
>> pw_dir:/
>> pw_shell:/system/bin/sh
>>
>> pw_name:shell
>> pw_passwd:(null)
>> pw_uid:2000
>> pw_gid:2000
>> pw_dir:/
>> pw_shell:/system/bin/sh
>
> but in the test program getpwuid(2000) *succeeds*.
>
> Please send your busybox's .config file.
>
> It's definitely not normal that the same getpwuid(2000)
> call returns different results in bbox and in test prog.
> We need to find out why.


Attached

>> Another thing I just thought about is the fact that I am needing to
>> use the CodeSourcery toolchain to compile busybox, and that I am
>> needing to use the "agcc" command (which is a wrapper script for the
>> android prebuilt toolchain included in the android source), to compile
>> the test application.
>
> Are you sure that busybox built with CodeSourcery toolchain
> uses android libc? Do you have working strace tool on android?
> Can you strace test program run and "busibox id" run
> and post results?


Actually, I'm 99% certain that that is why, as Tito put it, there are
unexpected results is because it doesn't use bionic that I know of,
whereas the android toolchain does.

>> If I try to build busybox directly using the arm-eabi-gcc compiler
>> included with the android source, it errors because it can't find
>> various include files.
>
> Please post these error messages and .config file used for build.
>
>> If I try to build busybox using the agcc wrapper script, it errors
>> because busybox redefines the type definition of socklen_t which is
>> defined at bionic/libc/include/sys/socket.h line 61 in the android
>> source. More errors pop up if you disable the definition in either bb
>> or bionic's include dir. Eventually I gave up on fixing them.
>
> Same: please post these error messages and .config file used for build.
> --
> vda
>

If I change the gcc config prefix entry to use "a" as the prefix to
gcc (thus making it call "agcc", smart eh? ;-) ), I get the errors
attached in agcc-errors.txt.

If I change the gcc config prefix entry to use "arm-eabi-" as the
prefix to gcc, I get the errors attached in arm-eabi-gcc-errors.txt

I'm also going to attach the wrapper script in case it is needed to
determine how the build environment is setup.

But I believe the errors from using arm-eabi-gcc are due to the
environment not being setup properly. They (google) setup the
environment within the Makefiles of the AOSP, Android Open Source
Project, so that the compiler works to compile the same environment,
but it's so archaic I can't read it like I can any normal Makefile,
which is why the agcc wrapper is needed.
-------------- next part --------------
[tom at Speeddy busybox-1.15.3]$ cp .config ~/bbconfig
[tom at Speeddy busybox-1.15.3]$ make distclean
  CLEAN   applets
  CLEAN   .tmp_versions
  CLEAN   .kernelrelease
~  CLEAN   scripts/basic
  CLEAN   scripts/kconfig/lxdialog
  CLEAN   scripts/kconfig
  CLEAN   include/config
  CLEAN   .config .config.old include/autoconf.h include/bbconfigopts.h include/usage_compressed.h include/applet_tables.h applets/usage .kernelrelease
[tom at Speeddy busybox-1.15.3]$ cp ~/bbconfig .config
[tom at Speeddy busybox-1.15.3]$ make
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/split-include
  HOSTCC  scripts/basic/docproc
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/kxgettext.o
  HOSTCC  scripts/kconfig/mconf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/lex.zconf.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf -s Config.in
#
# using defaults found in .config
#
  SPLIT   include/autoconf.h -> include/config/*
  GEN     include/bbconfigopts.h
  HOSTCC  applets/usage
  GEN     include/usage_compressed.h
13110+1 records in
13110+1 records out
26221 bytes (26 kB) copied, 0.0294538 s, 890 kB/s
  HOSTCC  applets/applet_tables
  GEN     include/applet_tables.h
  CC      applets/applets.o
applets/applets.c:10:20: error: assert.h: No such file or directory
In file included from include/libbb.h:13,
                 from include/busybox.h:10,
                 from applets/applets.c:11:
include/platform.h:137:23: error: byteswap.h: No such file or directory
include/platform.h:138:21: error: endian.h: No such file or directory
include/platform.h:144:7: warning: "__BYTE_ORDER" is not defined
include/platform.h:144:23: warning: "__BIG_ENDIAN" is not defined
include/platform.h:196:24: error: arpa/inet.h: No such file or directory
In file included from include/busybox.h:10,
                 from applets/applets.c:11:
include/libbb.h:15:19: error: ctype.h: No such file or directory
include/libbb.h:16:20: error: dirent.h: No such file or directory
include/libbb.h:17:19: error: errno.h: No such file or directory
include/libbb.h:18:19: error: fcntl.h: No such file or directory
include/libbb.h:19:22: error: inttypes.h: No such file or directory
include/libbb.h:20:19: error: netdb.h: No such file or directory
include/libbb.h:21:20: error: setjmp.h: No such file or directory
include/libbb.h:22:20: error: signal.h: No such file or directory
include/libbb.h:23:19: error: stdio.h: No such file or directory
include/libbb.h:24:20: error: stdlib.h: No such file or directory
include/libbb.h:27:20: error: string.h: No such file or directory
include/libbb.h:28:22: error: sys/poll.h: No such file or directory
include/libbb.h:29:23: error: sys/ioctl.h: No such file or directory
include/libbb.h:30:22: error: sys/mman.h: No such file or directory
include/libbb.h:31:24: error: sys/socket.h: No such file or directory
include/libbb.h:36:22: error: sys/stat.h: No such file or directory
include/libbb.h:37:22: error: sys/time.h: No such file or directory
include/libbb.h:38:23: error: sys/types.h: No such file or directory
include/libbb.h:39:22: error: sys/wait.h: No such file or directory
include/libbb.h:40:21: error: termios.h: No such file or directory
include/libbb.h:41:18: error: time.h: No such file or directory
include/libbb.h:42:20: error: unistd.h: No such file or directory
include/libbb.h:43:19: error: utime.h: No such file or directory
include/libbb.h:46:23: error: sys/param.h: No such file or directory
include/libbb.h:52:20: error: mntent.h: No such file or directory
include/libbb.h:56:24: error: sys/statfs.h: No such file or directory
include/libbb.h:67:20: error: locale.h: No such file or directory
include/libbb.h:76:17: error: pwd.h: No such file or directory
include/libbb.h:77:17: error: grp.h: No such file or directory
include/libbb.h:83:22: error: shadow.h: No such file or directory
In file included from include/busybox.h:10,
                 from applets/applets.c:11:
include/libbb.h:258: error: expected ')' before 'mode'
include/libbb.h:259: warning: 'struct stat' declared inside parameter list
include/libbb.h:259: warning: its scope is only this definition or declaration, which is probably not what you want
include/libbb.h:291: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'recurse_flags_t'
include/libbb.h:293: warning: 'struct stat' declared inside parameter list
include/libbb.h:294: warning: 'struct stat' declared inside parameter list
include/libbb.h:303: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'bb_copyfd_eof'
include/libbb.h:304: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'bb_copyfd_size'
include/libbb.h:305: error: expected declaration specifiers or '...' before 'off_t'
include/libbb.h:308: error: expected ')' before 'sz'
include/libbb.h:327: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:328: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:354: error: 'SIGHUP' undeclared here (not in a function)
include/libbb.h:355: error: 'SIGINT' undeclared here (not in a function)
include/libbb.h:356: error: 'SIGTERM' undeclared here (not in a function)
include/libbb.h:357: error: 'SIGPIPE' undeclared here (not in a function)
include/libbb.h:358: error: 'SIGQUIT' undeclared here (not in a function)
include/libbb.h:359: error: 'SIGABRT' undeclared here (not in a function)
include/libbb.h:360: error: 'SIGALRM' undeclared here (not in a function)
include/libbb.h:361: error: 'SIGVTALRM' undeclared here (not in a function)
include/libbb.h:362: error: 'SIGXCPU' undeclared here (not in a function)
include/libbb.h:363: error: 'SIGXFSZ' undeclared here (not in a function)
include/libbb.h:364: error: 'SIGUSR1' undeclared here (not in a function)
include/libbb.h:365: error: 'SIGUSR2' undeclared here (not in a function)
include/libbb.h:382: warning: 'struct sigaction' declared inside parameter list
include/libbb.h:390: error: expected ')' before 'gid'
include/libbb.h:391: error: expected ')' before 'uid'
include/libbb.h:397: warning: 'struct stat' declared inside parameter list
include/libbb.h:405: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'xlseek'
include/libbb.h:406: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'fdlength'
include/libbb.h:415: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'socktype_t'
include/libbb.h:416: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'family_t'
include/libbb.h:419: error: 'SOCK_STREAM' undeclared here (not in a function)
include/libbb.h:420: error: 'SOCK_DGRAM' undeclared here (not in a function)
include/libbb.h:421: error: 'SOCK_RDM' undeclared here (not in a function)
include/libbb.h:422: error: 'SOCK_SEQPACKET' undeclared here (not in a function)
include/libbb.h:423: error: 'SOCK_RAW' undeclared here (not in a function)
include/libbb.h:426: error: 'AF_UNSPEC' undeclared here (not in a function)
include/libbb.h:427: error: 'AF_INET' undeclared here (not in a function)
include/libbb.h:428: error: 'AF_INET6' undeclared here (not in a function)
include/libbb.h:429: error: 'AF_UNIX' undeclared here (not in a function)
include/libbb.h:442: warning: 'struct tm' declared inside parameter list
include/libbb.h:443: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'validate_tm_time'
include/libbb.h:447: warning: 'struct sockaddr' declared inside parameter list
include/libbb.h:449: warning: 'struct sockaddr' declared inside parameter list
include/libbb.h:450: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'xsendto'
include/libbb.h:466: error: field 'sa' has incomplete type
include/libbb.h:467: error: field 'sin' has incomplete type
include/libbb.h:469: error: field 'sin6' has incomplete type
include/libbb.h:477: error: field 'sa' has incomplete type
include/libbb.h:478: error: field 'sin' has incomplete type
include/libbb.h:480: error: field 'sin6' has incomplete type
include/libbb.h:527: error: expected declaration specifiers or '...' before 'sa_family_t'
include/libbb.h:528: error: expected declaration specifiers or '...' before 'sa_family_t'
include/libbb.h:553: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'send_to_from'
include/libbb.h:557: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'recv_from_to'
include/libbb.h:575: error: expected declaration specifiers or '...' before 'FILE'
include/libbb.h:603: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'safe_read'
include/libbb.h:604: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'nonblock_safe_read'
include/libbb.h:607: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'full_read'
include/libbb.h:610: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'read_close'
include/libbb.h:611: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'open_read_close'
include/libbb.h:626: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'safe_write'
include/libbb.h:629: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'full_write'
include/libbb.h:635: error: expected ')' before '*' token
include/libbb.h:637: error: expected ')' before '*' token
include/libbb.h:638: error: expected ')' before '*' token
include/libbb.h:640: error: expected ')' before '*' token
include/libbb.h:642: error: expected ')' before '*' token
include/libbb.h:644: error: expected ')' before '*' token
include/libbb.h:646: error: expected ')' before '*' token
include/libbb.h:648: error: expected ')' before '*' token
include/libbb.h:652: error: expected ')' before '*' token
include/libbb.h:656: error: expected ')' before '*' token
include/libbb.h:657: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:659: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:661: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:662: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:663: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:664: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:665: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:666: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:675: error: expected declaration specifiers or '...' before 'nfds_t'
include/libbb.h:675: warning: 'struct pollfd' declared inside parameter list
In file included from include/libbb.h:702,
                 from include/busybox.h:10,
                 from applets/applets.c:11:
include/xatonum.h:105: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'xatou32'
include/xatonum.h:163: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'bb_strtou32'
In file included from include/busybox.h:10,
                 from applets/applets.c:11:
include/libbb.h:710: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'xatou16'
include/libbb.h:722: error: expected specifier-qualifier-list before 'uid_t'
include/libbb.h:733: error: expected ')' before 'uid'
include/libbb.h:734: error: expected ')' before 'gid'
include/libbb.h:735: error: expected ')' before 'uid'
include/libbb.h:736: error: expected ')' before 'gid'
include/libbb.h:737: error: expected ')' before 'uid'
include/libbb.h:738: error: expected ')' before 'gid'
include/libbb.h:742: error: expected ')' before 'uid'
include/libbb.h:743: error: expected ')' before 'gid'
include/libbb.h:772: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'spawn'
include/libbb.h:773: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'xspawn'
include/libbb.h:775: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'safe_waitpid'
include/libbb.h:783: error: expected ')' before 'pid'
include/libbb.h:784: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'wait_any_nohang'
include/libbb.h:788: error: expected specifier-qualifier-list before 'jmp_buf'
include/libbb.h:831: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'fork_or_rexec'
include/libbb.h:861: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'option_mask32'
include/libbb.h:862: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'getopt32'
include/libbb.h:903: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'die_jmp'
include/libbb.h:999: warning: 'struct mntent' declared inside parameter list
include/libbb.h:1003: error: expected ')' before 'speed'
include/libbb.h:1004: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'tty_value_to_baud'
include/libbb.h:1022: error: expected declaration specifiers or '...' before 'mode_t'
include/libbb.h:1044: error: expected specifier-qualifier-list before 'FILE'
include/libbb.h:1050: error: expected declaration specifiers or '...' before 'FILE'
include/libbb.h:1149: warning: 'struct termios' declared inside parameter list
include/libbb.h:1166: warning: 'struct stat' declared inside parameter list
include/libbb.h:1167: warning: 'struct stat' declared inside parameter list
include/libbb.h:1222: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'read_key'
include/libbb.h:1279: error: expected specifier-qualifier-list before 'DIR'
include/libbb.h:1367: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:1368: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
include/libbb.h:1376: error: expected specifier-qualifier-list before 'uint32_t'
include/libbb.h:1389: error: expected specifier-qualifier-list before 'uint64_t'
include/libbb.h:1398: error: expected specifier-qualifier-list before 'uint32_t'
include/libbb.h:1419: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
In file included from applets/applets.c:11:
include/busybox.h:34: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'applet_nameofs'
include/busybox.h:35: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'applet_install_loc'
make[1]: *** [applets/applets.o] Error 1
make: *** [applets_dir] Error 2
[tom at Speeddy busybox-1.15.3]$ 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bbconfig
Type: application/octet-stream
Size: 21215 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/busybox/attachments/20100201/77efc90e/attachment-0002.obj>
-------------- next part --------------
[tom at Speeddy busybox-1.15.3]$ make
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/split-include
  HOSTCC  scripts/basic/docproc
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/kxgettext.o
  HOSTCC  scripts/kconfig/mconf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/lex.zconf.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf -s Config.in
#
# using defaults found in .config
#
  SPLIT   include/autoconf.h -> include/config/*
  GEN     include/bbconfigopts.h
  HOSTCC  applets/usage
  GEN     include/usage_compressed.h
13110+1 records in
13110+1 records out
26221 bytes (26 kB) copied, 0.0411306 s, 638 kB/s
  HOSTCC  applets/applet_tables
  GEN     include/applet_tables.h
  CC      applets/applets.o
In file included from include/libbb.h:13,
                 from include/busybox.h:10,
                 from applets/applets.c:11:
include/platform.h:244: error: redefinition of typedef 'intmax_t'
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/stdint.h:231: error: previous declaration of 'intmax_t' was here
include/platform.h:246: error: redefinition of typedef 'uintmax_t'
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/stdint.h:230: error: previous declaration of 'uintmax_t' was here
In file included from include/libbb.h:15,
                 from include/busybox.h:10,
                 from applets/applets.c:11:
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:99: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:99: warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:104: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:109: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:114: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:119: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:124: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:129: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:134: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:139: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:144: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:149: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:154: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:161: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:170: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:177: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:182: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:187: warning: C99 inline functions are not supported; using GNU89
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/ctype.h:192: warning: C99 inline functions are not supported; using GNU89
In file included from /home/tom/Devel/source/android/2.0.1/bionic/libc/include/netdb.h:66,
                 from include/libbb.h:20,
                 from include/busybox.h:10,
                 from applets/applets.c:11:
/home/tom/Devel/source/android/2.0.1/bionic/libc/include/sys/socket.h:61: error: redefinition of typedef 'socklen_t'
include/platform.h:198: error: previous declaration of 'socklen_t' was here
In file included from include/busybox.h:10,
                 from applets/applets.c:11:
include/libbb.h:83:22: error: shadow.h: No such file or directory
make[1]: *** [applets/applets.o] Error 1
make: *** [applets_dir] Error 2
[tom at Speeddy busybox-1.15.3]$ 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: agcc
Type: application/octet-stream
Size: 6128 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/busybox/attachments/20100201/77efc90e/attachment-0003.obj>


More information about the busybox mailing list