g+
g+ Communities
Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  <20022003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  Index 1994  1995  1996  1997  1998  1999  2000  2001  <20022003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013 
<== Date ==> <== Thread ==>

Subject: [Report] EPICS R3.13.6 build on RH Linux7.3
From: Noboru Yamamoto <noboru.yamamoto@kek.jp>
To: "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Mon, 24 Jun 2002 14:20:51 +0900
Hi,

During the compilation of EPICS R3.13.6 base software on Red
Hat Linux 7.3 I encountered a couple of problem.

1) -UDEBUG_PRINT=0 option crashes gcc/cpp.

Makefile.Host in src/ca includes the line:

USR_CFLAGS += -UDEBUG_PRINT=0

This compiler option, -UDEBUG_PRINT=0, crashes gcc on RH
7.3. Acually any option of the form  "-U<macro>=<val>",
crashes gcc.

2) "int" instead of "osiSocklen_t" in
src/cas/io/bsdSocket/casIntfIO.cc.

In the file src/cas/io/bsdSocket/casIntfIO.cc,
a couple of variables are declared as "int" instead of
"osiSocklent_t". This causes "unable to promote "int" to
"socklent_t" " error with gcc on RH7.3.
We can avoid this error by declaring these variables
as osiSocklent_t.

*** io/bsdSocket/casIntfIO.cc   28 Sep 2000 10:50:45 -0000
    1.4
--- io/bsdSocket/casIntfIO.cc   24 Jun 2002 04:57:19 -0000
***************
*** 70,76 ****
        int yes = TRUE;
        int status;
        caStatus stat;
!       int addrSize;

        if (!bsdSockAttach()) {
                return S_cas_internal;
--- 70,76 ----
        int yes = TRUE;
        int status;
        caStatus stat;
!       osiSocklen_t addrSize;

        if (!bsdSockAttach()) {
                return S_cas_internal;
***************
*** 223,229 ****
  {
        struct sockaddr newAddr;
          SOCKET          newSock;
!         int             length;
        casStreamOS     *pOS;

          length = sizeof(newAddr);
--- 223,229 ----
  {
        struct sockaddr newAddr;
          SOCKET          newSock;
!         osiSocklen_t    length;
        casStreamOS     *pOS;

          length = sizeof(newAddr);


================================

Regards,

Noboru


Navigate by Date:
Prev: [Q] How to set a timestamp in a device support routine. Noboru Yamamoto
Next: Re: [Q] How to set a timestamp in a device support routine. Marty Kraimer
Index: 1994  1995  1996  1997  1998  1999  2000  2001  <20022003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013 
Navigate by Thread:
Prev: RE: [Q] How to set a timestamp in a device support routine. David H. Thompson
Next: Re: [Report] EPICS R3.13.6 build on RH Linux7.3 Noboru Yamamoto
Index: 1994  1995  1996  1997  1998  1999  2000  2001  <20022003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICSv4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·