Hi Andrew,
If I delete the installed version of libVimbaCPP .so and run make it installs that file and I don’t get that error:
corvette:areaDetector/ADVimba/vimbaSupportCPP>rm ../lib/linux-x86_64/libVimbaCPP.so
rm: remove write-protected regular file '../lib/linux-x86_64/libVimbaCPP.so'? y
corvette:areaDetector/ADVimba/vimbaSupportCPP>make
make -C O.linux-x86_64 -f ../Makefile TOP=../.. \
T_A=linux-x86_64 install
make[1]: Entering directory `/home/epics/devel/areaDetector-3-8/ADVimba/vimbaSupportCPP/O.linux-x86_64'
Installing shared library ../../lib/linux-x86_64/libVimbaCPP.so
Installing library ../../lib/linux-x86_64/libVimbaCPP.a
make[1]: Leaving directory `/home/epics/devel/areaDetector-3-8/ADVimba/vimbaSupportCPP/O.linux-x86_64'
However, if I simply run make again I now get that error:
corvette:areaDetector/ADVimba/vimbaSupportCPP>make
make -C O.linux-x86_64 -f ../Makefile TOP=../.. \
T_A=linux-x86_64 install
make[1]: Entering directory `/home/epics/devel/areaDetector-3-8/ADVimba/vimbaSupportCPP/O.linux-x86_64'
make[1]: Circular libVimbaCPP.so <- ../../lib/linux-x86_64/libVimbaCPP.so dependency dropped.
Installing library ../../lib/linux-x86_64/libVimbaCPP.a
make[1]: Leaving directory `/home/epics/devel/areaDetector-3-8/ADVimba/vimbaSupportCPP/O.linux-x86_64'
Thanks,
Mark
Hi Again Mark,
On 11/4/19 7:30 AM, Mark Rivers via Core-talk wrote:
I have a fairly simple Makefile (attached) to build a support library for areaDetector/ADVimba.
It seems to work OK, but I get this message when I build:
corvette:areaDetector/ADVimba/vimbaSupportCPP>make -s
make[1]: Circular libVimbaCPP.so <- ..//../lib/linux-x86_64/libVimbaCPP.so dependency dropped.
Any idea why I am getting that?
Your first line says TOP=../ instead of the more usual
TOP=.. which is what's causing the double-slash
..//.. in the path given in that warning message, but that's benign.
Have you tried doing a 'make distclean' recently? I'm using the Jenkins epics-areaDetector build workspace to look at it and I have the current ADVimba git master branch building in vimbaSupportCPP without getting that error. Base-3.14 fails to install any
of the .hpp files because it doesn't have a vpath for finding %.hpp files, but this change fixes that:
diff --git a/vimbaSupportCPP/Makefile b/vimbaSupportCPP/Makefile
index 8fb0165..d09ce0a 100755
--- a/vimbaSupportCPP/Makefile
+++ b/vimbaSupportCPP/Makefile
@@ -1,9 +1,11 @@
-TOP=../
+TOP=..
include $(TOP)/configure/CONFIG
#----------------------------------------
# ADD MACRO DEFINITIONS AFTER THIS LINE
#=============================
+vpath %.hpp $(SRC_DIRS)
+
INC += $(patsubst ../%, %, $(wildcard ../VimbaCPP/Include/*))
LIBRARY_IOC_WIN32 += VimbaCPP
I don't have a build against a newer Base though, so I'm not sure what else might be going on.
- Andrew
--
Complexity comes for free, Simplicity you have to work for.