1 linux在命令行下打开pdf文件
1.1 envice打开pdf文件
linux中一般使用envice
命令打开pdf文件:
envice filename.pdf
例如:
evince how_to_use.pdf
1.2 可能遇到错误:evince: error while loading shared libraries: libz.so.1: failed to map segment from shared object
(base) shl@zhihui-mint:~/projects/2DLaserCalibrate/camera_2d_lidar_calibration_ws/src/camera_2d_lidar_calibration$ evince how_to_use.pdf
evince: error while loading shared libraries: libz.so.1: failed to map segment from shared object
(base) shl@zhihui-mint:~/projects/2DLaserCalibrate/camera_2d_lidar_calibration_ws/src/camera_2d_lidar_calibration$
从错误的类型可以看到,是没有找到libz.so.1
这个动态库导致的!那如何查找动态库对应的安装库包呢!
一般我们会使用apt-file
来查找动态库对应的库包:
1、安装apt-file
工具
sudo apt-get install apt-file
2、更新
sudo apt-file update
3、查找对应的动态库
apt-file search libz.so.1
base) shl@zhihui-mint:~/projects/2DLaserCalibrate/camera_2d_lidar_calibration_ws/src/camera_2d_lidar_calibration$ sudo apt-file search libz.so.1
lib32z1: /usr/lib32/libz.so.1
lib32z1: /usr/lib32/libz.so.1.2.11
libx32z1: /usr/libx32/libz.so.1
libx32z1: /usr/libx32/libz.so.1.2.11
libzadc4: /usr/lib/x86_64-linux-gnu/genwqe/libz.so.1
zlib1g: /lib/x86_64-linux-gnu/libz.so.1
zlib1g: /lib/x86_64-linux-gnu/libz.so.1.2.11
(base) shl@zhihui-mint:~/projects/2DLaserCalibrate/camera_2d_lidar_calibration_ws/src/camera_2d_lidar_calibration$
4、安装库包
sudo apt-get install lib32z1
但是,我安装好lib32z1
之后,依然会报错:evince: error while loading shared libraries: libz.so.1: failed to map segment from shared object
,最终的解决方式,加一个sudo
权限即可!
sudo evince how_to_use.pdf
参考:https://blog.csdn.net/stephen_yu/article/details/45645073 # 错误解决
参考:https://blog.csdn.net/www_helloworld_com/article/details/84786581