环境 Ubuntu16.04
0.问题
重新编译open3d遇到问题
1 | error: ‘png_image’ has not been declared |
原因分析:因为安装open3d后,卸载了我的ros和pcl,重新安装pcl后
1 2 3 | Remove the following packages: 1) libpng16-dev 2) libpng16-devtools |
可以看到把我的libpng16卸载了,这应该是导致png_image报错的原因
如果我们我直接安装
1 | sudo apt-get install libpng16-dev |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: libhdf5-mpi-dev libhdf5-openmpi-dev linux-headers-4.13.0-36 linux-headers-4.13.0-36-generic linux-image-4.13.0-36-generic linux-image-extra-4.13.0-36-generic Use 'sudo apt autoremove' to remove them. The following additional packages will be installed: libpng16-16 libpng16-devtools Recommended packages: libpng16-tools The following packages will be REMOVED: libcairo2-dev libfontconfig1-dev libfreetype6-dev libgazebo7-dev libgdal-dev libgdk-pixbuf2.0-dev libgtk2.0-dev libpango1.0-dev libpcl-dev libpng12-dev libvtk6-dev libvtk6-qt-dev libxft-dev ros-kinetic-camera-calibration ros-kinetic-compressed-depth-image-transport ros-kinetic-compressed-image-transport ros-kinetic-cv-bridge ros-kinetic-depth-image-proc ros-kinetic-desktop ros-kinetic-desktop-full ros-kinetic-gazebo-dev ros-kinetic-gazebo-plugins ros-kinetic-gazebo-ros ros-kinetic-gazebo-ros-pkgs ros-kinetic-image-geometry ros-kinetic-image-pipeline ros-kinetic-image-proc ros-kinetic-image-publisher ros-kinetic-image-rotate ros-kinetic-image-transport-plugins ros-kinetic-image-view ros-kinetic-opencv3 ros-kinetic-pcl-conversions ros-kinetic-pcl-ros ros-kinetic-perception ros-kinetic-perception-pcl ros-kinetic-rqt-common-plugins ros-kinetic-rqt-image-view ros-kinetic-simulators ros-kinetic-stage ros-kinetic-stage-ros ros-kinetic-stereo-image-proc ros-kinetic-theora-image-transport ros-kinetic-vision-opencv ros-kinetic-viz tk-dev tk8.6-dev The following NEW packages will be installed: libpng16-16 libpng16-dev libpng16-devtools 0 upgraded, 3 newly installed, 47 to remove and 184 not upgraded. Need to get 0 B/425 kB of archives. After this operation, 280 MB disk space will be freed. |
可以看到和ros冲突了.
1.解决方案
选择源码安装的方式
下载地址
https://sourceforge.net/projects/libpng/files/libpng16/
需要翻墙,翻不了强又找不到资源的可以私信我.
我下载的版本是1.6.37
1 2 3 4 5 6 | cd libpng-1.6.37 mkdir build cd build cmake .. make sudo make install |
之后在编译open3d就没有问题了,结束.
参考
https://blog.csdn.net/l1216766050/article/details/82810994?utm_medium=distribute.pc_relevant.none-task-blog-title-3&spm=1001.2101.3001.4242