EDM on OS X gets access fault in ipAddrToAsciiEngine::allocate
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
EPICS Base |
Fix Released
|
High
|
Jeff Hill |
Bug Description
Compile and build latest edm/base on OS X/Intel
Trying to run EDM gets access fault in ipAddrToAsciiEn
Here's the stack trace:
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION
0x0008ae23 in epicsMutex::lock ()
(gdb) where
#0 0x0008ae23 in epicsMutex::lock ()
#1 0x00088e3a in ipAddrToAsciiEn
#2 0x004aff0b in cac::cac ()
#3 0x004cfb5b in ca_client_
#4 0x004b25f4 in ca_context_create ()
#5 0x0041f4df in EPICS_PV_
#6 0x0044cb2b in __static_
#7 0x8fe0fcb2 in __dyld_
#8 0x8fe0a1c6 in __dyld_
#9 0x8fe0a164 in __dyld_
#10 0x8fe0a164 in __dyld_
#11 0x8fe0c646 in __dyld_
#12 0x8fe03070 in __dyld_
#13 0x0000245a in _start ()
#14 0x000023c5 in start ()
The guard class mutex is being used before it has been created.
Additional information:
A quick workaround was to add libCom before the EDM libraries in the EDM makefile:
@@ -10,7 +10,7 @@
edm_LIBS_Linux += 114135a4-
edm_
- edm_LIBS_Darwin += EdmBase cfcaa62e-
+ edm_LIBS_Darwin += Com EdmBase cfcaa62e-
edm_LIBS_Darwin += 114135a4-
edm_
This is a quick hack and not a real fix, though!
I'll leave a *real* fix up to the C++ experts.
Original Mantis Bug: mantis-276
http://
I wonder if this is an issue only with a static build or if it occurs also when using shareable libraries?