Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: RE: EPICS 3.14.12.1 on Fedora 15 gcc 4.6
From: "Jeff Hill" <johill@lanl.gov>
To: "'Mihaylov, Miroslav N.'" <mmihay2@uic.edu>, <tech-talk@aps.anl.gov>
Date: Wed, 25 May 2011 16:36:22 -0600
Hi Miroslav,

> Any suggestion  how to resolve that 'mutable' compilation issue?
> Thanks.
> ../cac.h:269:26: error: reference ?mutex? cannot be declared ?mutable?

The solution will be to change the mutex reference into a pointer (which
will not need to be mutable). A bug entry has been opened against this
issue, but it looks like a patch hasn't been installed at this time. This is
of course an issue with the very latest gcc.

https://bugs.launchpad.net/epics-base/+bug/736273

In the future it will be preferable to use the improved epicsMutex class
which allows reference counting of the mutex instance.

> In file included from ../../../src/libCom/cxxTemplates/epicsOnce.cpp:29:0:
>../../../src/libCom/cxxTemplates/epicsSingleton.h:37:5: error: ?size_t?
> does not name a type

The issue here may be that size_t is only in the std namespace, and so we
need to add "using std :: size_t" or change the declarations to use "std ::
size_t"

> My fix for that was to include
> #include "stddef.h"

In recent codes I prefer including <cstddef> and importing from namespace
std as needed. However, it may be that that header already includes a
standard library header that defines "std :: size_t", and so including
<cstddef> might be superfluous.

Jeff
______________________________________________________
Jeffrey O. Hill           Email        johill@lanl.gov
LANL MS H820              Voice        505 665 1831
Los Alamos NM 87545 USA   FAX          505 665 5107

Message content: TSPA

With sufficient thrust, pigs fly just fine. However, this is
not necessarily a good idea. It is hard to be sure where they
are going to land, and it could be dangerous sitting under them
as they fly overhead. -- RFC 1925


> -----Original Message-----
> From: tech-talk-bounces@aps.anl.gov [mailto:tech-talk-bounces@aps.anl.gov]
> On Behalf Of Mihaylov, Miroslav N.
> Sent: Wednesday, May 25, 2011 2:35 PM
> To: tech-talk@aps.anl.gov
> Subject: EPICS 3.14.12.1 on Fedora 15 gcc 4.6
> 
> Hello.
> I've tried building EPICS base  on the  latest Fedora 15.
> 
> First problem I encountered was
> 
> 
> In file included from ../../../src/libCom/cxxTemplates/epicsOnce.cpp:29:0:
> ../../../src/libCom/cxxTemplates/epicsSingleton.h:37:5: error: ?size_t?
> does not name a type
> 
> My fix for that was to include
>  #include "stddef.h"
> in the file
>        EPICS_BASE/src/libCom/cxxTemplates/epicsSingleton.h
> 
> Next problem while  compiling epics base is
> 
> In file included from ../cac.cpp:39:0:
> ../cac.h:269:26: error: reference ?mutex? cannot be declared ?mutable?
> [-fpermissive]
> ../cac.h:270:26: error: reference ?cbMutex? cannot be declared ?mutable?
> [-fpermissive]
> In file included from ../cac.cpp:47:0:
> ../udpiiu.h:152:26: error: reference ?cbMutex? cannot be declared
> ?mutable? [-fpermissive]
> ../udpiiu.h:153:26: error: reference ?cacMutex? cannot be declared
> ?mutable? [-fpermissive]
> make[3]: *** [cac.o] Error 1
> 
> I think that this thread is referring to the same problem.
> http://www.aps.anl.gov/epics/core-talk/2011/msg00029.php
> 
> Any suggestion  how to resolve that 'mutable' compilation issue?
> Thanks.
> 
> Miroslav
> 
> --
> Miroslav Mihaylov
> mmihay2@uic.edu



References:
EPICS 3.14.12.1 on Fedora 15 gcc 4.6 Mihaylov, Miroslav N.

Navigate by Date:
Prev: RE: trouble with 64-bit Window7 Mark Rivers
Next: Problems with executing caExample for 3.14.12.1 Cid, Florencio A
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: EPICS 3.14.12.1 on Fedora 15 gcc 4.6 Mihaylov, Miroslav N.
Next: Problems with executing caExample for 3.14.12.1 Cid, Florencio A
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014  2015  2016  2017  2018  2019 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·