target thumb C: mdnsd <= external/mdnsresponder/mDNSPosix/mDNSUNP.c external/mdnsresponder/mDNSPosix/mDNSUNP.c: In function 'recvfrom_flags': external/mdnsresponder/mDNSPosix/mDNSUNP.c:649: error: dereferencing pointer to incomplete type external/mdnsresponder/mDNSPosix/mDNSUNP.c:653: error: dereferencing pointer to incomplete typeline:649 是
            sin6->sin6_addr     = ip6_info->ipi6_addr;
lin: 653 是
            pktp->ipi_ifindex   = ip6_info->ipi6_ifindex;
所以猜是 ip6_info 沒宣告。查一下:
            struct in6_pktinfo *ip6_info = (struct in6_pktinfo*)CMSG_DATA(cmptr);
找一下有沒有struct in6_pktinfo:
- bionic : 沒有
- kernel : include/linux/ipv6.h
- jelly bead bionic : libc/kernel/common/linux/ipv6.h
所以,直接把 jelly bean 的 ipv6.h copy 過來。
然後找 jelly-bean 的 header 哪裡有 include ipv6.h
libc/include/netinet/in.h所以照著修改 ...
rebuild mdnsresponder...OK
 
沒有留言:
張貼留言