предотвращение libz.so делает в OpenCV 3 на Ubuntu 16.04 с Cuda

OpenCV в зависимости от несуществующей символьной ссылки от

/usr/lib/libz.so

Я не могу установить OpenCV 3.0.0 3.1.0 или 3.2.0 на моем рабочем компьютере, которому установили Cuda. На новой установке Ubuntu 16.04, следующей инструкциям в этой ссылке OpenCV, установленный превосходный без Cuda (и изменяющей версию, загруженную, чтобы быть 3.0.0.

Теперь устанавливая на моем рабочем компьютере я продолжаю получать эту ошибку после выполнения делания после создания make-файла (cmake). Команда cmake работает, команда делают, впоследствии базовая проблема.

cmake -D CMAKE_BUILD_TYPE=RELEASE -D INSTALL_C_EXAMPLES=OFF \
    -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON \
    -D WITH_QT=OFF -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D WITH_OPENGL=OFF -D WITH_V4L=ON -D WITH_CUDA=ON \
    -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_TBB=ON ..

make

Ошибка:

make[2]: *** No rule to make target '/usr/lib/libz.so', needed by 'lib/libopencv_core.so.3.2.0'.  Stop.
CMakeFiles/Makefile2:1283: recipe for target 'modules/core/CMakeFiles/opencv_core.dir/all' failed
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2

После контроля/usr/lib/libz.so это - повисшая символьная ссылка при просмотре, где он, как предполагается, связывается с.

ls /usr/lib/libz.so -lhA
lrwxrwxrwx 1 root root 31 May  9 09:29 /usr/lib/libz.so -> /usr/lib/i386-linux-gnu/libz.so

cd /usr/lib/i386-linux-gnu/
julian@ThinkPad-W540:/usr/lib/i386-linux-gnu$ ls
audit              libformw.so.5.9             libpanelw.so.5.9
gconv              libgpm.so.2                 libpcreposix.so.3
libcuda.so         libmenuw.so.5               libpcreposix.so.3.13.2
libcuda.so.1       libmenuw.so.5.9             libtic.so.5
libcuda.so.375.66  libnvidia-opencl.so.1       libtic.so.5.9
libdb-5.3.so       libnvidia-opencl.so.375.66
libformw.so.5      libpanelw.so.5

Я попытался переустановить пакет libz, находится в

sudo apt-get install zlib1g-dev --reinstall

и все еще не имейте никакой удачи с той же ошибкой

*** No rule to make target '/usr/lib/libz.so', needed by 'lib/libopencv_core.so.3.2.0'.  Stop.

Таким образом, я на этапе ощущения себя полностью застрявшим, я попытался связать/usr/lib/libz.so с cuda файлами в/usr/lib/i386-linux-gnu, поскольку необходимое/usr/lib/i386-linux-gnu/libz.so не там и там после не переустанавливает zlib.

Любая справка ценилась бы.

0
задан 2 July 2017 в 09:25

1 ответ

У меня была та же проблема.

Кажется, что символьная связь libz.so в/usr/lib разорвана.

Я удалил ту символьную ссылку и создал новую ссылку на каталог, где мой libz.so расположен и выполнен make снова и все работало как ожидалось.

1
ответ дан 3 November 2019 в 00:22

Другие вопросы по тегам:

Похожие вопросы: