Not knowing the code at all, this looks a lot like two mains or program initialization
sequences that follow the same naming convention are being linked together.
If they are really supposed to be linked together, consider making that demoRegistrar
symbol static.
--joel
I can no longer build seq 2.2.7 with epics 7.
Heinz
epics 7 last release:
git clone --recursive -b 7.0 https://git.launchpad.net/epics-base
make seq-2.2.7 on OS-X :
…
Installing created dbd file ../../../dbd/demo.dbd
cc -DUSE_TYPED_RSET -DUNIX -Ddarwin -O3 -g -Wall -Werror-implicit-function-declaration -arch x86_64 -fno-common -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/clang -I../../../include/os/Darwin -I../../../include -I/Users/junkes/GERT/EPICS/epics-base/include/compiler/clang -I/Users/junkes/GERT/EPICS/epics-base/include/os/Darwin -I/Users/junkes/GERT/EPICS/epics-base/include -c demo.c
c++ -DUSE_TYPED_RSET -DUNIX -Ddarwin -O3 -g -Wall -arch x86_64 -fno-common -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/clang -I../../../include/os/Darwin -I../../../include -I/Users/junkes/GERT/EPICS/epics-base/include/compiler/clang -I/Users/junkes/GERT/EPICS/epics-base/include/os/Darwin -I/Users/junkes/GERT/EPICS/epics-base/include -c demo_registerRecordDeviceDriver.cpp
cc -DUSE_TYPED_RSET -DUNIX -Ddarwin -O3 -g -Wall -Werror-implicit-function-declaration -arch x86_64 -fno-common -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/clang -I../../../include/os/Darwin -I../../../include -I/Users/junkes/GERT/EPICS/epics-base/include/compiler/clang -I/Users/junkes/GERT/EPICS/epics-base/include/os/Darwin -I/Users/junkes/GERT/EPICS/epics-base/include -c ../demoMain.c
c++ -o demo -L/Users/junkes/GERT/EPICS/SUPPORT/seq/lib/darwin-x86 -L/Users/junkes/GERT/EPICS/epics-base/lib/darwin-x86 -arch x86_64 demo.o demo_registerRecordDeviceDriver.o demoMain.o -ldbRecStd -ldbCore -lca -lCom -lseq -lpv
duplicate symbol '_pvar_func_demoRegistrar' in:
demo.o
demoMain.o
ld: 1 duplicate symbol for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [demo] Error 1
make[2]: *** [install.darwin-x86] Error 2
make[1]: *** [demo.install] Error 2
make: *** [examples.install] Error 2