Интегрируя общий объект в приложение, ldd и readelf показывают разные результаты - PullRequest
1 голос
/ 09 января 2020

Я пытаюсь интегрировать OpenCV в приложение и сталкиваюсь с некоторыми проблемами ниже.

error while loading shared libraries: libopencv_imgproc.so.4.1: cannot open shared object file: No such file or directory

Однако, когда я проверяю вывод ldd и readelf ниже приведены различия.

$readelf -d <app name>
0x0000000000000001 (NEEDED)             Shared library: [libopencv_imgcodecs.so.4.1]
0x0000000000000001 (NEEDED)             Shared library: [libopencv_core.so.4.1]

$ldd <app name>
libopencv_imgcodecs.so.4.1 => <path to opencv>/opencv/lib/libopencv_imgcodecs.so.4.1 (0x00007f04555b2000)
libopencv_imgproc.so.4.1 => <path to opencv>/opencv/lib/libopencv_imgproc.so.4.1 (0x00007f0453e8f000)
libopencv_core.so.4.1 => <path to opencv>/opencv/lib/libopencv_core.so.4.1 (0x00007f0452774000)

Как показано выше, libopencv_imgpro c отсутствует в выводе readelf . Может кто-нибудь указать, что вызывает такое поведение?

...