[nanomsg] Re: Problem building on HP-UX

  • From: Martin Sustrik <sustrik@xxxxxxxxxx>
  • To: nanomsg@xxxxxxxxxxxxx
  • Date: Tue, 17 Sep 2013 09:40:45 +0200

Hi Andre,

Would you mind providing a patch?

Martin

On 17/09/13 09:29, André Jonsson wrote:
On 2013-09-16 16:29, Martin Sustrik wrote:
On 16/09/13 16:13, André Jonsson wrote:

I can see that on my own (linux) machine that iov_base is a void *, how
does that work? I mean, is the code in usock_posix.inc not used then?

It is used. No idea why it compiles.

In any case the line should look something like this:

((uint8_t*) hdr->msg_iov->iov_base) += nbytes;

Does that help?
Martin

Hm... I thought I replied to this already, but I can't find it... oh well.

It does indeed help!  The whole thing compiled like a charm (save for a
handful of warnings).

However, I had to do add an extra level of indirection for it to compile:

*((uint8_t**)&(hdr->msg_iov->iov_base)) += nbytes;

Which is horrible... but without it, it said:

   CC     src/aio/usock.lo
"src/aio/usock_posix.inc", line 901: error #2137: expression must be a
           modifiable lvalue
                         ((uint8_t*)hdr->msg_iov->iov_base) += nbytes;


Anyway, I'll see if I can make some adjustments to configure.ac for it
to generate to correct defines for this platform (and hopefully not
break it for others).


/André




Other related posts: