Hi all, when I tried to build the PCAS module within the EPICS base, I encountered the following errors:
/ics/tools/base-7.0.8/include/gddI.h: In member function ‘gdd& gdd::operator=(const gdd&)’:
/ics/tools/base-7.0.8/include/gddI.h:117:17: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘class gdd’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]
117 | { memcpy(this,&v,sizeof(gdd)); return *this; }
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from /ics/tools/base-7.0.8/include/dbMapper.h:20,
from ../../../../src/pcas/generic/caServer.cc:15:
/ics/tools/base-7.0.8/include/gdd.h:96:23: note: ‘class gdd’ declared here
96 | class epicsShareClass gdd
| ^~~
In file included from ../../../../src/pcas/generic/caServer.cc:21:
../../../../src/pcas/generic/caServerI.h: At global scope:
../../../../src/pcas/generic/caServerI.h:91:5: error: ‘class tsDLList<ioBlocked> tsDLList<ioBlocked>::tsDLList’ is private within this context
91 | tsDLList < casStrmClient > clientList;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../../../../src/pcas/generic/caServerI.h:33,
from ../../../../src/pcas/generic/caServer.cc:21:
../../../../src/pcas/generic/ioBlocked.h:43:7: note: declared private here
43 | class ioBlockedList : private tsDLList<ioBlocked> {
| ^~~~~~~~~~~~~
In file included from ../../../../src/pcas/generic/caServer.cc:21:
../../../../src/pcas/generic/caServerI.h:92:5: error: ‘class tsDLList<ioBlocked> tsDLList<ioBlocked>::tsDLList’ is private within this context
92 | tsDLList < casIntfOS > intfList;
| ^~~~~~~~~~~~~~~~~~~~~~
In file included from ../../../../src/pcas/generic/caServerI.h:33,
from ../../../../src/pcas/generic/caServer.cc:21:
../../../../src/pcas/generic/ioBlocked.h:43:7: note: declared private here
43 | class ioBlockedList : private tsDLList<ioBlocked> {
| ^~~~~~~~~~~~~
make[5]: *** [/ics/tools/base-7.0.8/configure/RULES_BUILD:263: caServer.o] Error 1
make[5]: Leaving directory '/ics/tools/base-7.0.8/modules/pcas/src/pcas/build/O.linux-x86_64'
make[4]: *** [/ics/tools/base-7.0.8/configure/RULES_ARCHS:58: install.linux-x86_64] Error 2
make[4]: Leaving directory '/ics/tools/base-7.0.8/modules/pcas/src/pcas/build'
make[3]: *** [/ics/tools/base-7.0.8/configure/RULES_DIRS:85: build.install] Error 2
make[3]: Leaving directory '/ics/tools/base-7.0.8/modules/pcas/src/pcas'
make[2]: *** [/ics/tools/base-7.0.8/configure/RULES_DIRS:85: pcas.install] Error 2
make[2]: Leaving directory '/ics/tools/base-7.0.8/modules/pcas/src'
make[1]: *** [/ics/tools/base-7.0.8/configure/RULES_DIRS:85: src.install] Error 2
make[1]: Leaving directory '/ics/tools/base-7.0.8/modules/pcas'
make: *** [../configure/RULES_DIRS:85: pcas.install] Error 2
Versions: Ubuntu 22.04.4 LTS, pcas-4.13.2
what do I need to do?
Thanks,
Long Feng