Я пытаюсь собрать OpenMVG и не могу устранить некоторые ошибки зависимости. Я нахожусь в среде анаконды и использую установленные Conda версии g ++ и некоторые библиотеки (у меня нет привилегий суперпользователя).
$ cmake --build . --target install
... (lots of output from seemingly successful steps) ...
[ 77%] Built target openMVG_sample_main_features_repeatability_dataset
[ 77%] Linking CXX executable ../../Linux-x86_64-RELEASE/openMVG_sample_features_affine
/home/user/anaconda3/envs/sfm/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.3.0/../../../../x86_64-conda_cos6-linux-gnu/bin/ld: cannot find -ljpeg
/home/user/anaconda3/envs/sfm/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.3.0/../../../../x86_64-conda_cos6-linux-gnu/bin/ld: cannot find -lpng
/home/user/anaconda3/envs/sfm/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.3.0/../../../../x86_64-conda_cos6-linux-gnu/bin/ld: cannot find -lz
/home/user/anaconda3/envs/sfm/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.3.0/../../../../x86_64-conda_cos6-linux-gnu/bin/ld: cannot find -ltiff
collect2: error: ld returned 1 exit status
gmake[2]: *** [Linux-x86_64-RELEASE/openMVG_sample_features_affine] Error 1
gmake[1]: *** [openMVG_Samples/features_affine_demo/CMakeFiles/openMVG_sample_features_affine.dir/all] Error 2
gmake: *** [all] Error 2
Но libjpeg
, libpng
и т. Д. Все /home/user/anaconda3/envs/sfm/lib/
. Например:
(sfm) [openMVG]$ find /home/user/anaconda3/envs/sfm/ -name 'libjpeg*'
/home/user/anaconda3/envs/sfm/conda-meta/libjpeg-turbo-cos6-x86_64-1.2.1-h24432d5_0.json
/home/user/anaconda3/envs/sfm/lib/libjpeg.a
/home/user/anaconda3/envs/sfm/lib/libjpeg.so
...
Итак, я попробовал оба из следующих вариантов:
export LD_PRELOAD=/home/user/anaconda3/envs/sfm/lib/libjpeg.so
и
export LD_LIBRARY_PATH=/home/user/anaconda3/envs/sfm/lib/:/home/user/anaconda3/lib/:/usr/lib64/:/usr/lib/
до повторного запуска $ cmake --build . --target install
, но получитетот же результат.
Мне кажется, что компилятору не удалось найти некоторые библиотеки. Поэтому я точно сказал, где искать, и даже попытался предварительно загрузить их, но он все равно не может их найти. Добавление путей к LD_LIBRARY_PATH было необходимо, чтобы зайти так далеко - так что, похоже, это сработало для других вещей. Просто не эта проблема. Как мне устранить неполадки здесь?