hi there
i am trying to cross compile OpenCV-3.2.0. The build machine is Ubuntu 16.04 with toolchain provide by TI (which contains arm-linux-gnueabihf-gcc, version 4.9.3, and some usful libraries). The CMake version is 3.5.1
after configuration by CMake, make, and install, i checked the dependencies between the opencv modules, and there appears relative path like below.
arm-linux-gnueabihf-objdump -x libopencv_imgproc.so |grep NEED
NEEDED ../../lib/libopencv_core.so
NEEDED libstdc++.so.6
NEEDED libm.so.6
NEEDED libgcc_s.so.1
NEEDED libc.so.6
VERNEED 0x0000b368
VERNEEDNUM 0x00000003
you can see the relative path "../../lib/" before depending libopencv_core.so.
I figured out that this is because the absense of -soname parameter in the link.txt command file.
and further, i found in the build directory that in the configure file <opencv-3.2.0-build-dir>/OpenCVModules.cmake, there are lots of properities:
IMPORTED_NO_SONAME_DEBUG "TRUE"
(or IMPORTED_NO_SONAME_RELEASE "TRUE")
I think the parameter should be "FALSE".
So the question is, how can i do to make those parameters "FALSE"?
Thanks a lot!!