delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2004/02/14/04:01:42

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <402DE42F.3060208@cwilson.fastmail.fm>
Date: Sat, 14 Feb 2004 04:02:39 -0500
From: Charles Wilson <cygwin AT cwilson DOT fastmail DOT fm>
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030630
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: Still trouble with IPC/cygipc
References: <000601c3f2c2$c2717ae0$0202a8c0 AT duron>
In-Reply-To: <000601c3f2c2$c2717ae0$0202a8c0@duron>

Frank Wuebbeling wrote:
> Hi,
> 
> I'm still having trouble understanding how IPC is supposed to be working now. I
> used to be running apache 2.0, but that fails now due to lots of IPC problems.
> cygcheck tells me my installation has cygipc version 2.03-2, cygwin is at
> 1.5.7-1, and yes, I reinstalled cygwin after installing cygipc so that my
> include files point to the new ipc distribution. 

No, that means you now have:
   /usr/include/sys/ipc.h        <<< from cygwin
   /usr/include/cygipc/sys/ipc.h <<< from cygipc
Which is good, right, and proper.

 From /usr/share/doc/Cygwin/cygipc-*.README, you need to
   1) compile with -I/usr/include/cygipc
   2) link with -lcygipc

If you don't do #1, you end up with cygwin/cygserver's declarations.  If 
you don't do #2, you end up with cygwin/cygserver's implementations.

> ipcs then gives me
> 
> wuebbel% ipcs
> Bad system call

And finally, ipcs is the cygwin/cygserver version.  You want ipcscygipc. 
  (you did upgrade cygutils to 1.2.4-1, right?  And then re-installed 
cygwin-1.5.7 AGAIN after doing so?)

> just like any call to shmget as in:
> 
> #include <sys/ipc.h>
> #include <sys/shm.h>
> main()
> {
>  printf("%d\n",shmget(1,10,IPC_CREAT|IPC_PRIVATE));
> }
> wuebbel% cc x.c
> wuebbel% a.exe
> Bad system call

Yep, you're using cygwin's routines, which expect that cygserver is 
running.  It's not, so that's a "bad system call."

Or, you could bail on cygipc and just use cygserver instead.  Crank up 
the cygserver daemon (see /usr/share/doc/cygserver* ? I think...) and 
try your tests again.

> 
> cygcheck(edited):

In the future, do not paste the cygcheck output but rather attach it. 
That way, it won't clog the search engine results with false hits for 
"XFree86" etc.

--
Chuck


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019