Ошибка компилятора Cmake. Библиотека ANN не найдена - PullRequest
0 голосов
/ 23 сентября 2019

Я пытался скомпилировать этот репозиторий ссылка , но я застрял с ошибкой CMake: ann_LIBRARIES не найдено.При поиске в сети я нашел ANN ссылку , которую я строю, но я не знаю, как указать абсолютный путь в файле Cmake.А также я установил libflann1.9 и libflann-dev, но у меня все та же проблема.

У меня установлены ubuntu 18.04 и qt5, установлены библиотеки boost lib, blas & lapack и libpng.

cmake ..
-- The C compiler identification is GNU 7.4.0
-- The CXX compiler identification is GNU 7.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   serialization
--   filesystem
--   system
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") 
-- Checking for module 'libxml++-2.6'
--   Found libxml++-2.6, version 2.40.1
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   system
--   filesystem
-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so   
-- Found GLUT: /usr/lib/x86_64-linux-gnu/libglut.so  
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   thread
--   chrono
--   system
--   date_time
--   atomic
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   filesystem
--   system
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11") 
-- Found PNG: /usr/lib/x86_64-linux-gnu/libpng.so (found version "1.6.34") 
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   filesystem
--   thread
--   system
--   chrono
--   date_time
--   atomic
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   filesystem
--   thread
--   serialization
--   program_options
--   regex
--   system
--   chrono
--   date_time
--   atomic
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   filesystem
--   program_options
--   regex
--   system
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   filesystem
--   program_options
--   system
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   filesystem
--   program_options
--   regex
--   system
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
ann_LIBRARIES
    linked by target "TrackingUtils" in directory /home/dhiren/Dev/FranksVelodyneAlgos/libTrackingUtils

-- Configuring incomplete, errors occurred!
See also "/home/dhiren/Dev/FranksVelodyneAlgos/build/CMakeFiles/CMakeOutput.log".
See also "/home/dhiren/Dev/FranksVelodyneAlgos/build/CMakeFiles/CMakeError.log".

Спасибо

1 Ответ

0 голосов
/ 24 сентября 2019

Наконец, я смог скомпилировать кодовую базу

Мои процедуры приведены ниже:

  1. Сначала я попытался скомпилировать исходный код в Ubuntu 18.04, но застрял со многимиошибки, поэтому я попытался в Ubuntu 14.04 (Docker).
  2. Я установил необходимые пакеты, как упоминал автор.
  3. Теперь я застрял с проблемой ann_LIBRARIES, поэтому для этого я загрузил библиотеку ANN из ссылка и сборка путем простого выполнения make linux-g ++ из папки ann_1.1.2
  4. Теперь библиотека ANN готова к использованию.После этого, чтобы избежать проблемы ann_LIBRARIES во время процесса сборки, мы должны выполнить команду из терминала cmake -Dann_LIBRARIES=/home/ann_1.1.2/lib/libANN.a ..
  5. Теперь, пока я успешно строю проект.Теперь пришло время скомпилировать код с помощью команды make, снова я получил ошибку ANN/ANN.h: No such file or directory, которую я решил, указав абсолютный путь #include </home/ann_1.1.2/include/ANN/ANN.h> //approximate) nearest neighbor из каждого файла, в котором возникла ошибка.Очевидно, что предоставление абсолютного пути не очень хорошая идея.Вот и все

Спасибо @ Цывареву

Надеюсь, это кому-нибудь поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...