写在前面
1、本文内容
open3d计算OrientedBoundingBox时报错:
QH6248 qh_lib_check: Incorrect qhull library called. Caller uses reentrant Qhull while library is non-reentrant
QH6249 qh_lib_check: Incorrect qhull library called. Size of qhT for caller is 8232, but for library is 2896.
QH6255 qh_lib_check: Cannot continue. Library ‘qhull 7.2.0 (2015.2 2016/01/18)’ uses a dynamic qhT via qh_QHpointer (e.g., qhull_p.so)
2、平台
ubuntu 1804
3、转载请注明出处:
https://blog.csdn.net/qq_41102371/article/details/130478655
原因
代码里面同时使用了pcl和open3d,当前libpcl依赖的libqhull和open3d使用的qhull冲突了
https://github.com/isl-org/Open3D/issues/1364
解决方法
1、
open3d不与pcl同时使用,把代码里面pcl的部分给注掉,运行正常,但是必须要同时使用时,但应该还是没解决根本问题。
2、
在target_link_libraries时,先link PCL的,再link Open3D的(或者说,如果用了PCL或PCL生成的LIBRARIY,应该在这些LINK之后,Open3D再被LINK)
target_link_libraries(${PROJECT_NAME} ${PCL_LIBRARIES}
target_link_libraries(${PROJECT_NAME} ${Open3D_LIBRARIES})