C++ errors building base using cygwin1.7
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
EPICS Base |
Fix Released
|
High
|
Unassigned |
Bug Description
The error messages in the ca directory are listed in Pete's email below.
I get another message in ca also:
casw.o:
`typeinfo for bheMemoryManager'
and I get more messages of the same type in libCom/test, cas and excas. See attached file.
-------- Original Message --------
Subject:
building base on cygwin1.7
Date:
Fri, 28 May 2010 17:33:44 -0500
From:
Pete R. Jemian <email address hidden>
Reply-To:
<email address hidden>
Organization:
Advanced Photon Source
To:
EPICS <email address hidden>
Anyone have experience yet with building EPICS base on cygwin 1.7? My
C++ is not good enough to resolve this problem.
EPICS_HOST_ARCH = cygwin-x86
situation: building EPICS base 3.14.11
host: cygwin 1.7 on Windows 7 Ultimate 64-bit OS
error: undefined reference to `typeinfo for epicsTimerNotify'
fails: Win7-64bit / cygwin1.7
succeeds: Win7-64bit / cygwin1.5
succeeds: Win7-32bit / cygwin1.5
not tested yet: Win7-32bit / cygwin1.7
The build fails
-----------------% clip here %-----------------
make[3]: Entering directory
`/cygdrive/
...
g++ -c -D_POSIX_THREADS -D_POSIX_TIMERS -DUNIX -DCYGWIN32
-O3 -Wall -m32 -D_DLL -I. -I../O.Common -I. -I..
-I../..
../msgForMultip
g++ -o ca.dll -shared -Wl,--out-
-Lc:/Users/
cac.o cacChannel.o cacChannelNotify.o cacContextNotify.o
cacReadNotify.o cacWriteNotify.o cacStateNotify.o access.o iocinf.o
convert.o test_event.o repeater.o searchTimer.o
disconnectGover
netiiu.o udpiiu.o tcpiiu.o noopiiu.o netReadNotifyIO.o
netWriteNotifyIO.o netSubscription.o tcpSendWatchdog.o tcpRecvWatchdog.o
bhe.o ca_client_context.o oldChannelNotify.o oldSubscription.o
getCallback.o getCopy.o putCallback.o syncgrp.o CASG.o syncGroupNotify.o
syncGroupReadNo
comQueRecv.o comQueSend.o comBuf.o hostNameCache.o
msgForMultiplyD
-lcurses -lm
Creating library file:
ca.libsearchTim
for searchTimer]+0x10): undefined reference to `typeinfo for
epicsTimerNotify'
disconnectGover
for disconnectGover
epicsTimerNotify'
repeaterSubscri
for repeaterSubscri
epicsTimerNotify'
tcpSendWatchdog
for tcpSendWatchdog
epicsTimerNotify'
tcpRecvWatchdog
for tcpRecvWatchdog
epicsTimerNotify'
collect2: ld returned 1 exit status
make[3]: *** [ca.dll] Error 1
make[3]: Leaving directory
`/cygdrive/
make[2]: *** [install.
make[2]: Leaving directory
`/cygdrive/
make[1]: *** [ca.install] Error 2
make[1]: Leaving directory
`/cygdrive/
make: *** [src.install] Error 2
-----------------% clip here %-----------------
--
Changed in epics-base: | |
status: | Fix Committed → Fix Released |
Michael Davidsaver believes this patch he developed will solve this issue. Not tried it myself though.