Re: [LAU] building csound from source - OOps/remote.c:70: error: storage size of 'ifr' isn't known

From: Brad Fuller <bradallenfuller@email-addr-hidden>
Date: Mon Jul 07 2008 - 23:47:28 EEST

I think this is strictly a csound build error -- I probably didn't set
something correctly (which I set nothing), but I can't find out what
it is. Before I go delving into this, I'm sure someone can tell me
what I didn't set right..

To compile is just:

# scons

The error:
===
OOps/remote.c: In function 'getIpAddress':
OOps/remote.c:70: error: storage size of 'ifr' isn't known
scons: *** [OOps/remote.o] Error 1
scons: building terminated because of errors.
===

I'm compiling on Linux 64_x86. The error, I suppose, shows up in the
strcpy below (from remote.c):

#ifdef HAVE_SOCKETS

  /* get the IPaddress of this machine */
static int getIpAddress(char *ipaddr, char *ifname)
{
    int ret = 1;
#ifdef WIN32
    /* VL 12/10/06: something needs to go here */
    /* gethostbyname is the real answer; code below id unsafe */
    char hostname[1024];
    struct hostent *he;
    struct sockaddr_in sin;
    gethostname(hostname, sizeof(hostname));
    he = gethostbyname(hostname);

    memset(&sin, 0, sizeof (struct sockaddr_in));
    memmove(&sin.sin_addr, he->h_addr_list[0], he->h_length);
    strcpy(ipaddr, inet_ntoa (sin.sin_addr));
    ret = 0;

#else
    struct ifreq ifr;
    int fd;

    fd = socket(AF_INET,SOCK_DGRAM, 0);
    if (fd >= 0) {
      strcpy(ifr.ifr_name, ifname);

      if (ioctl(fd, SIOCGIFADDR, &ifr) == 0) {
        char *local;
        local = inet_ntoa(((struct sockaddr_in *)(&ifr.ifr_addr))->sin_addr);
        strcpy(ipaddr, local);
        ret = 0;
      }
    }
    close(fd);
#endif
    return ret;

Brad Fuller wrote:
> Trying to build C5.08 on gentoo so that I can build the java wrapper
> (to try AVSynthesis). Rcv'd the following error. Google turns up only
> one search that didn't help.
>
> usr/X11R6/include OOps/remote.c
> OOps/remote.c: In function 'getIpAddress':
> OOps/remote.c:70: error: storage size of 'ifr' isn't known
> scons: *** [OOps/remote.os] Error 1
> scons: building terminated because of errors.
>
>
> I thought maybe it was that I emerged SWIG w/o a 'java' or 'python',
> but I set those flags and no change.
>
> or,
>
> if there is a way to create a java wrapper using gentoo USE flags,
> that's much easier (I'm using the proaudio overlay). I set java USE
> flag, but it didn't create the java wrapper. That lead me to compile
> from 5.08 source.
>
> thanks much!
>
> brad

_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user
Received on Tue Jul 8 04:15:07 2008

This archive was generated by hypermail 2.1.8 : Tue Jul 08 2008 - 04:15:07 EEST