EPICS Controls 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  2020  2021  2022  2023  2024  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  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: EPICS 3.14.12.1 on Fedora 15 gcc 4.6
From: "Jeff Hill" <[email protected]>
To: "'Mihaylov, Miroslav N.'" <[email protected]>, <[email protected]>
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        [email protected]
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: [email protected] [mailto:[email protected]]
> On Behalf Of Mihaylov, Miroslav N.
> Sent: Wednesday, May 25, 2011 2:35 PM
> To: [email protected]
> 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
> [email protected]



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  2020  2021  2022  2023  2024 
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  2020  2021  2022  2023  2024 
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 ·