Ошибка ссылки PCL в QT C++

Я ссылался на эту ссылку. И у меня такая же проблема.

PCLVisualizer addPointCloud аварийно завершает работу

Я использую Qt С++.

Я использую PCL1.8 (C:\Program Files\PCL1.8.0) Я использую ОС Windows 7. Все зависимости lib даны для PCL и VTK Приложение не компилируется. Есть ссылка Ошибка. Компилятор MSVC 64 бит. Ниже приведен фрагмент моего кода.

    void MainWindow::on_pushButton_5_clicked()
{
 pcl::PointCloud::Ptr cloud (new pcl::PointCloud) ; 
 int size=45; 
 cloud->resize(45); 
 for(int ix=0;ix!=45;ix++) 
  { 
    cloud->points[ix].x=ix; 
    cloud->points[ix].y=ix; 
    cloud->points[ix].z=ix;      
    cloud->points[ix].intensity=1; 
  }
boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer (new pcl::visualization::PCLVisualizer ("3D Viewer"));

     viewer->setBackgroundColor (0.5, 0.5, 0.5);
     viewer->addPointCloud<pcl::PointXYZI> (cloud, "sample cloud");
     viewer->setPointCloudRenderingProperties (pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 1, "sample cloud");
     viewer->addCoordinateSystem (1.0);
     while (!viewer->wasStopped ())
     {
             viewer->spinOnce (100);
             boost::this_thread::sleep (boost::posix_time::microseconds   
            (100000));
     }
}

Ошибка прикреплена ниже Изображение ошибки ссылки


person Nidhin KR    schedule 19.02.2017    source источник


Ответы (1)


Согласно MSDN здесь и здесь вам нужно связать User32.lib и Gdi32.lib

в .pro файле:

LIBS += -lUser32 -lGdi32

Полное решение можно найти здесь.

person Max Go    schedule 19.02.2017
comment
Что-то случилось. Было более 10 ошибок связи. Сокращено до 1 ошибки. (пусто) (?Initialize@vtkWin32OutputWindow@@KAHXZ) - person Nidhin KR; 19.02.2017
comment
Обновили ответ ... ссылка на Gdi32.lib отсутствует ... в будущем, пожалуйста, найдите пропущенный исходный модуль функции и просто свяжите его аналогичным образом, это нетрудно узнать, спасибо - person Max Go; 19.02.2017
comment
Спасибо, Макс. Ты прав. Теперь ошибка ушла. - person Nidhin KR; 19.02.2017