Я хочу визуализировать облако точек, используя библиотеку point-cloud. Я уже включил:ошибка LNK2001 при включении «pcl_visualizer.h»
#include <pcl/point_types.h>
#include <pcl/io/pcd_io.h>
#include <pcl/kdtree/kdtree_flann.h>
#include <pcl/features/normal_3d.h>
#include <pcl/surface/gp3.h>
без каких-либо проблем, но когда я добавить
#include <pcl/visualization/pcl_visualizer.h>
в мой код я получаю сообщение об ошибке LNK2001.
Fehler 51 ошибка LNK2001: Nicht aufgelöstes externes Символ "" общественность: виртуальная пустота __cdecl ПКЛ :: Визуализация :: PCLVisualizer :: FPSCallback :: Execute (класс vtkObject *, неподписанные долго, пустота *)?»(Выполнить @ FPSCallback @ PCLVisualizer @ визуализации @ ПКЛ @@ UEAAXPEAVvtkObject @@ KPEAX @ Z)»
Я думаю, что есть библиотека отсутствует, но я не могу понять, какой из них. Это список с дополнительными зависимостями моей программы:
- pcl_common_debug.lib
- pcl_io_debug.lib
- pcl_kdtree_debug.lib
- pcl_features_debug.lib
- pcl_surface_debug.lib
- pcl_search_debug. lib
- pcl_visualization_debug.lib
- vtkComm onCore-6.1.lib
- vtksys-6.1.lib
- и некоторые OpenCV LIBS
может кто-нибудь сказать мне, какая библиотека отсутствует?
Заранее благодарен!
редактировать:
Я создал небольшой CPP-файл на основе кода greedy_projection.cpp. Благодаря совету drescherjm, я использовал cmake для создания проекта, и я мог бы скомпилировать его без ошибок. Затем я хотел включить материал в другой проект, но произошла такая же ошибка. Теперь я понял, что причиной ошибки является флаг \ clr. У меня есть проект Windows.Forms, поэтому он скомпилирован с \ clr. Проект greedy_projection.cpp был скомпилирован без этого флага. Есть ли способ избежать этой несовместимости pcl_visualizer.h с \ clr?
Мой совет заключается в использовании CMake для создания вашего визуального проекта студии вместо обработки этого самостоятельно. – drescherjm
Я хочу включить PCL в существующий проект. Вот почему я добавил зависимости вручную. Вы также рекомендуете CMake для существующих проектов, потому что я немного боюсь, что он уничтожит другие зависимости ... – Buzzy
Это зависит от того, насколько сложным является существующий проект. Альтернативный вариант - создать простое тестовое приложение, используя проект, созданный CMake, который включает в себя зависимости, которые вам нужны, а затем в Visual Studio IDE скопируйте зависимости из проекта CMake в ваш проект. – drescherjm