Compiling from a fresh git clone on mint debian 64 bit, I am able to “make gimp”, but when I tried “make cli” it fails with the following:
/usr/bin/ld: cannot find -lippicv
with no other errors or warnings. What am i missing? Thanks!
Compiling from a fresh git clone on mint debian 64 bit, I am able to “make gimp”, but when I tried “make cli” it fails with the following:
/usr/bin/ld: cannot find -lippicv
with no other errors or warnings. What am i missing? Thanks!
Well, I’ve no idea what this library is.
Maybe is it related to OpenCV ? I don’t need it on my version of Linux (Ubuntu).
$ ldd /usr/bin/gmic | grep ippicv
returns nothing.
I seem to remember having a similar issue a few years back. It turned out that the build-essential package simply wasn’t installed. However, since you got no other errors, that’s probably not the case. So that leaves a dependency issue, I’m guessing? OpenCV seems to be the only thing popping up in searches, so I’d hazard that the above guess is correct.
This link may be of some use: GitHub /usr/bin/ld: cannot find -lippicv
I have build-essential installed, and opencv-3.1. However, the opencv installation was “homemade”, I compiled the source, built it and installed it via checkinstall on my Mint Debian system.
I repeated the opencv build and install, saw no errors, and installed it. However the gmic build step “make cli” showed the same error.
Another search revealed that there is a WITH_IPP build variable for opencv, and that IPP is an Intel offering “Integrated Performance Primitives”.
Note that when invoking “make cli” for gmic, I see the following as part of the terminal output:
-L/usr/local/lib -lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lippicv -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
I rebuilt and installed opencv, this time specifying WITH_IPP. Again, no problems, and now have a static lib
/usr/local/share/OpenCV/3rdparty/lib/libippicv.a
I copied this to my /usr/include/lib directory and ran ldconfig.
Now when I try “make cli” no more complaints about libippicv. However…
/usr/bin/ld: cannot find -lopencv_shape
/usr/bin/ld: cannot find -lopencv_videoio
/usr/bin/ld: cannot find -lopencv_imgcodecs
collect2: error: ld returned 1 exit status
Makefile:371: recipe for target ‘gmic’ failed
So now I’m looking at how I broke those bits of opencv…
Hm. The “missing” libraries exist on my system.
ldconfig -p | grep opencv_shape libopencv_shape.so.3.1 (libc6,x86-64) => /usr/local/lib/libopencv_shape.so.3.1 ldconfig -p | grep opencv_videoio libopencv_videoio.so.3.1 (libc6,x86-64) => /usr/local/lib/libopencv_videoio.so.3.1 ldconfig -p | grep opencv_imgcodecs libopencv_imgcodecs.so.3.1 (libc6,x86-64) => /usr/local/lib/libopencv_imgcodecs.so.3.1and /usr/local/lib is included in LD_LIBRARY_PATH. Is this a version mismatch issue?
Again, a few years back, I was attempting to compile GIMP 2.9 on Xubuntu. I kept getting similar errors when I was sure all the libraries were installed. I think I eventually had to bust open the makefile and specify the version numbers I had. It was a dirty hack but it worked. Sorry I can’t be more specific. I’m on my phone with a toddler crawling all over me.
Morgin,
Ha, enjoy these days. It seemed like my two boys would never get out of diapers, then the next thing I knew they were leaving for university!
I’ll start digging into the make details…
Got it working. I uninstalled opencv, installed a few gstreamer*dev packages, and rebuilt. I still have an unresolved “missing sys/videoio.h” error during the opencv build, but now gmic builds, and I can use both cv2 from python and gmic from the command line.
It may blow up if I try to edit videos, but I don’t plan on exercising that functionality…
Fantastic! Glad you got it working. Apparently that’s a problem others have had while compiling OpenCv, too.
In my cursory search, I came across a few bug reports and some recommended hacks dating back to 2014.
Probably another example of version mismatch issues.