Добавьте CGAL lib, используя CMakeList (Ubuntu) / 3D-сетку.

Я пытаюсь использовать lib CGAL для реконструкции трехмерных сеток. Я хотел бы проверить некоторые примеры, доступные на Веб-сайт, но теперь, чтобы сделать это правильно …

Что я сделал :

  • Скачать источник с мерзавец (выпуск 4.10)

  • Установил зависимость (не все кроме части)

  • И запустите cmake-gui .., который предоставляет это после шага настройки:
    введите описание изображения здесь

Но когда я делаю следующее включает в себя:

#include <opencv2/opencv.hpp>
#include <CGAL/trace.h>
#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
//#include <CGAL/Polyhedron_3.h>
//#include <CGAL/IO/Polyhedron_iostream.h>
//#include <CGAL/Surface_mesh_default_triangulation_3.h>
//#include <CGAL/make_surface_mesh.h>
//#include <CGAL/Implicit_surface_3.h>
//#include <CGAL/IO/output_surface_facets_to_polyhedron.h>
//#include <CGAL/Poisson_reconstruction_function.h>
#include <CGAL/Point_with_normal_3.h>
#include <CGAL/property_map.h>
#include <CGAL/IO/read_xyz_points.h>
//#include <CGAL/compute_average_spacing.h>
//#include <CGAL/Polygon_mesh_processing/distance.h>

Только раскомментированная работа.

Что я сделал, чтобы проверить:

  • Я мой cmake

    find_package (CGAL REQUIRED)
    MESSAGE ( «=======================»)
    MESSAGE ( «$ {CGAL_USE_FILE}»)
    MESSAGE ( «$ {CGAL_INCLUDE_DIRS}»)
    MESSAGE ( «$ {CGAL_LIBRARIES_DIR}»)
    MESSAGE ( «=======================»)

    СПИСОК (APPEND INCLUDE_DIRS $ {CGAL_INCLUDE_DIRS})
    СПИСОК (ПРИЛОЖИТЬ БИБЛИОТЕКИ $ {CGAL_LIBRARIES_DIR})

(часть списка предназначена для предоставления доступа к библиотекам всем модулям в cmakelist, выполнив

FILE(GLOB APPFILES "app/*.cpp")
FOREACH(APPFILE ${APPFILES})
GET_FILENAME_COMPONENT(APPNAME ${APPFILE} NAME_WE)
ADD_EXECUTABLE(${APPNAME} ${APPFILE})
TARGET_LINK_LIBRARIES(${APPNAME} ${LIBRARIES} )
ENDFOREACH()

)
какой дисплей:

=======================
/usr/local//lib/CGAL/UseCGAL.cmake
/usr/local//include
/usr/local//lib
=======================
  • Более того, когда я запускаю cmake .. Я получил это:

    ВНИМАНИЕ: целевой «testCGAL» запрашивает ссылку на каталог «/ usr / local // lib». Цели могут ссылаться только на библиотеки. CMake сбрасывает предмет.

    ВНИМАНИЕ: целевой «testCGAL» запрашивает ссылку на каталог «/ usr / local // lib». Цели могут ссылаться только на библиотеки. CMake сбрасывает предмет.

(testCGAL — это имя класса для проверки импорта).

Я не понимаю, почему часть моих комментариев не работает. Кто-то может сказать мне, почему или может дать мне совет?

Спасибо

PS: Кстати, я хотел бы сделать реконструкцию трехмерных сеток из карты глубины (и соответствующего цвета) или цветного облака точек. Кроме того, я хотел бы получить текстурированную сетку. Кто-нибудь знает хорошую библиотеку для этого?

=============== РЕДАКТИРОВАТЬ ============

В конце, когда я запускаю cmake .. и все компилирую, но я получаю следующее сообщение об ошибке:

[ 99%] Building CXX object CMakeFiles/testCGAL.dir/app/testCGAL.cpp.o
[100%] Linking CXX executable bin/testCGAL
CMakeFiles/testCGAL.dir/app/testCGAL.cpp.o: In function `CGAL::Interval_nt<false>::Test_runtime_rounding_modes::Test_runtime_rounding_modes()':
testCGAL.cpp:(.text._ZN4CGAL11Interval_ntILb0EE27Test_runtime_rounding_modesC2Ev[_ZN4CGAL11Interval_ntILb0EE27Test_runtime_rounding_modesC5Ev]+0xd2): undefined reference to `CGAL::assertion_fail(char const*, char const*, int, char const*)'
testCGAL.cpp:(.text._ZN4CGAL11Interval_ntILb0EE27Test_runtime_rounding_modesC2Ev[_ZN4CGAL11Interval_ntILb0EE27Test_runtime_rounding_modesC5Ev]+0x180): undefined reference to `CGAL::assertion_fail(char const*, char const*, int, char const*)'
CMakeFiles/testCGAL.dir/app/testCGAL.cpp.o: In function `CGAL::Interval_nt<true>::Test_runtime_rounding_modes::Test_runtime_rounding_modes()':
testCGAL.cpp:(.text._ZN4CGAL11Interval_ntILb1EE27Test_runtime_rounding_modesC2Ev[_ZN4CGAL11Interval_ntILb1EE27Test_runtime_rounding_modesC5Ev]+0xd2): undefined reference to `CGAL::assertion_fail(char const*, char const*, int, char const*)'
testCGAL.cpp:(.text._ZN4CGAL11Interval_ntILb1EE27Test_runtime_rounding_modesC2Ev[_ZN4CGAL11Interval_ntILb1EE27Test_runtime_rounding_modesC5Ev]+0x180): undefined reference to `CGAL::assertion_fail(char const*, char const*, int, char const*)'
collect2: error: ld returned 1 exit status
CMakeFiles/testCGAL.dir/build.make:352: recipe for target 'bin/testCGAL' failed
make[2]: *** [bin/testCGAL] Error 1
CMakeFiles/Makefile2:302: recipe for target 'CMakeFiles/testCGAL.dir/all' failed
make[1]: *** [CMakeFiles/testCGAL.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector