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
沒有留言:
張貼留言