我用的是Ubuntu10.04,之前一直用的好好的,只是前段时间手贱,为了安装一个无聊的软件,添加了一个源:

deb http://cz.archive.ubuntu.com/ubuntu precise main

结果导致系统软件版本冲突,

依赖关系得不到满足,无法再安装任何软件,更新管理器也无法弹出来。

将就着用了一段时间,后来实在受不了了,于是上网搜索,得到了一个解答:

sudo apt-get update

sudo apt-get upgrade

sudo apt-get -f install

我也不管三七二十一,照着做了。折腾了好久,自动下载了一堆软件。但由于有个较新的源,与10.04不太兼容,问题依旧

其中不满足依赖关系的有
libsounda

nautilus

gnome-bluetooth

ppp

....

我不太记得了。

我更是把gnome-bluetooth删除了,又连带要删除其他一大堆东西,结果把gnome也弄出问题了,现象为:

双击jpg文件无法打开,evince无法打开pdf文件,nautilus文件管理器没有标题栏,既无法拖动,也没有“最小化,最大化,关闭”那三个按钮。

于是只好再上网找原因。发现一篇文章,是说可能是软件源冲突造成的。我查看了 /etc/apt/sources.list ,发现除了最后一个源以外,其他的源

的地址上都带有 "lucid" ,而10.04的代号为Lucid Lynx,也就是说,带有lucid的源是可靠的源。于是我把最后那个源注释掉。然后

sudo apt-get update

更新管理器马上弹出来了。

心里那个轻松啊!!!那些依赖关系完全满足了,也可以安装软件了。

但是,等等,那些

双击jpg文件无法打开,evince无法打开pdf文件,nautilus文件管理器没有标题栏,既无法拖动,也没有“最小化,最大化,关闭”那三个按钮。

还是存在。

再上网查,得到一个解答,用metacity --replace可以把标题栏弄出来,试了一下,果然!

接着再解决jpg文件的打开问题。

由于在文件管理器里双击的时候,只得到一个打不开的结果,看不到任何其他信息,所以如果能在终端里用命令打开,或许可以有出错信息。

但我又不知道用什么命令打开图片,只好再上网查找,发现命令是 eog,即 Eye of GNOME,试一下:

eog linux.jpg

终端上显示 无法打开文件 libjpeg.so.62 : No such file or directory

我想肯定是我之前在删除gnome-bluetooth时连带删除了这个文件

但是eog从哪里搜索这个文件呢?或者说ubuntu系统会搜索哪个路径来给应用软件提供这个库呢?

于是强大的 strace 又派上用场了:

strace -o jp eog linux.jpg

运行之后,马上得到文件jp,它记录了软件访问过哪些地方。文件不大,因为它一开始就去找libjpeg.so.62,但没找到,很快就退出了。

用vim打开它,发现它记录了一大堆路径,都是在那里去open库文件libjpeg.so.62的,但全部返回 No such file or directory。

我把这些路径全部提取出来,见下面的列表:

/lib/tls/i686/sse2/cmov/libjpeg.so.62
/lib/tls/i686/sse2/libjpeg.so.62
/lib/tls/i686/cmov/libjpeg.so.62
/lib/tls/i686/libjpeg.so.62
/lib/tls/sse2/cmov/libjpeg.so.62
/lib/tls/sse2/libjpeg.so.62
/lib/tls/cmov/libjpeg.so.62
/lib/tls/libjpeg.so.62
/lib/i686/sse2/cmov/libjpeg.so.62
/lib/i686/sse2/libjpeg.so.62
/lib/i686/cmov/libjpeg.so.62
/lib/i686/libjpeg.so.62
/lib/sse2/cmov/libjpeg.so.62
/lib/sse2/libjpeg.so.62
/lib/cmov/libjpeg.so.62
/lib/libjpeg.so.62
/usr/lib/tls/i686/sse2/cmov/libjpeg.so.62
/usr/lib/tls/i686/sse2/libjpeg.so.62
/usr/lib/tls/i686/cmov/libjpeg.so.62
/usr/lib/tls/i686/libjpeg.so.62
/usr/lib/tls/sse2/cmov/libjpeg.so.62
/usr/lib/tls/sse2/libjpeg.so.62
/usr/lib/tls/cmov/libjpeg.so.62
/usr/lib/tls/libjpeg.so.62
/usr/lib/i686/sse2/cmov/libjpeg.so.62
/usr/lib/i686/sse2/libjpeg.so.62
/usr/lib/i686/cmov/libjpeg.so.62
/usr/lib/i686/libjpeg.so.62
/usr/lib/sse2/cmov/libjpeg.so.62
/usr/lib/sse2/libjpeg.so.62
/usr/lib/cmov/libjpeg.so.62
/usr/lib/libjpeg.so.62
/lib/i486-linux-gnu/tls/i686/sse2/cmov/libjpeg.so.62
/lib/i486-linux-gnu/tls/i686/sse2/libjpeg.so.62
/lib/i486-linux-gnu/tls/i686/cmov/libjpeg.so.62
/lib/i486-linux-gnu/tls/i686/libjpeg.so.62
/lib/i486-linux-gnu/tls/sse2/cmov/libjpeg.so.62
/lib/i486-linux-gnu/tls/sse2/libjpeg.so.62
/lib/i486-linux-gnu/tls/cmov/libjpeg.so.62
/lib/i486-linux-gnu/tls/libjpeg.so.62
/lib/i486-linux-gnu/i686/sse2/cmov/libjpeg.so.62
/lib/i486-linux-gnu/i686/sse2/libjpeg.so.62
/lib/i486-linux-gnu/i686/cmov/libjpeg.so.62
/lib/i486-linux-gnu/i686/libjpeg.so.62
/lib/i486-linux-gnu/sse2/cmov/libjpeg.so.62
/lib/i486-linux-gnu/sse2/libjpeg.so.62
/lib/i486-linux-gnu/cmov/libjpeg.so.62
/lib/i486-linux-gnu/libjpeg.so.62
/usr/lib/i486-linux-gnu/tls/i686/sse2/cmov/libjpeg.so.62
/usr/lib/i486-linux-gnu/tls/i686/sse2/libjpeg.so.62
/usr/lib/i486-linux-gnu/tls/i686/cmov/libjpeg.so.62
/usr/lib/i486-linux-gnu/tls/i686/libjpeg.so.62
/usr/lib/i486-linux-gnu/tls/sse2/cmov/libjpeg.so.62
/usr/lib/i486-linux-gnu/tls/sse2/libjpeg.so.62
/usr/lib/i486-linux-gnu/tls/cmov/libjpeg.so.62
/usr/lib/i486-linux-gnu/tls/libjpeg.so.62
/usr/lib/i486-linux-gnu/i686/sse2/cmov/libjpeg.so.62
/usr/lib/i486-linux-gnu/i686/sse2/libjpeg.so.62
/usr/lib/i486-linux-gnu/i686/cmov/libjpeg.so.62
/usr/lib/i486-linux-gnu/i686/libjpeg.so.62
/usr/lib/i486-linux-gnu/sse2/cmov/libjpeg.so.62
/usr/lib/i486-linux-gnu/sse2/libjpeg.so.62
/usr/lib/i486-linux-gnu/cmov/libjpeg.so.62
/usr/lib/i486-linux-gnu/libjpeg.so.62

正好系统里有路径 /lib/tls/i686/cmov,它里头全部是共享库文件,那我只要把libjpeg.so.62放到这个目录下应该就好了。

但我要上哪里去弄到libjpeg.so.62呢?我想系统里头的/usr目录下应该有,那就搜索吧:

find /usr -type f -name "*libjpeg.so.62*"

得到一个结果:

/usr/lib/i386-linux-gnu/libjpeg.so.62.0.0

那就把这个文件复制到 /lib/tls/i686/cmov吧,更好的办法是建立一个link,即

cd /lib/tls/i686/cmov

sudo ln -s /usr/lib/i386-linux-gnu/libjpeg.so.62.0.0 libjpeg.so.62

然后eog就可以正常打开图片了。

再解决evince打开pdf的问题,不过此时双击pdf文件,evince已经能工作了。看来也是由于libjpeg.so.62的问题

这是2014年的第一篇博文,记录了对ubuntu的折腾。

UbuntuKylin 14.04快出来了,到时候装到家里的笔记本

~~~~~~~~~~~~~~~

Ubuntu无法打开图片和pdf相关推荐

  1. WIN8 打开图片或PDF时 提示 在禁用UAC时,此应用程序无法激活

    解决办法: 1.键盘windows图标+"X",选择运行: 2.在运行框中输入"msconfig": 3.弹出的框中选择"工具"/" ...

  2. ubuntu中命令打开图片、文档、音乐、视频等

    ubuntu中命令打开图片.文档.音乐.视频等 安装播放软件 sudo apt install libdvdnav4 libdvdread4 gstreamer1.0-plugins-bad gstr ...

  3. Win10用Windows照片查看程序打开图片+更改注册表后导致Win10任务栏Adobe PDF阅读器图标显示异常

    Win10用Windows照片查看程序打开图片 解决办法: 参考:https://jingyan.baidu.com/article/455a9950bb20bda166277824.html 上述操 ...

  4. 【文字识别】OCR截图文字识别提取(无需安装)拖拽图片,打开图片,图片PDF转文字的好帮手

    软件无需安装,双击打开就能用,适用于Windows 7以上平台: 具有截图文字识别,拖拽文字识别,打开文字识别,翻译文字等功能 可用于图片和PDF中文字的识别提取中,电脑一切看得见的文件都可以识别,支 ...

  5. viewerjs 在html打开图片或打开pdf文件使用案例

    开发者常用到在线访问pdf,txt,浏览图片的插件,这里推荐viewer.js这个插件,简单好用.它的核心亮点就是查看图片和pdf功能.老早以前就用过的,昨天一个小伙伴问我Android开发在线浏览p ...

  6. JS使用技巧-如何解决谷歌浏览器下载图片、PDF文档时只打开不下载的问题?

    问题描述: 页面下载跨域的图片.pdf文件,浏览器总是自动打开,并且在下载列表里面不显示. 如何解决谷歌浏览器下载图片.PDF文档时只打开不下载的问题?如何变成直接下载? 解决方法: 使用js获取下载 ...

  7. 【嵌入式05】Ubuntu下opencv新手操作:(打开图片及视频)

    每一个程序背后都站着一堆优秀的代码库. 通过学习opencv图像库编程,了解如何借助第三方库函数完成一个综合程序设计. 一.关于opencv的安装 二.编写一个打开图片进行特效显示的代码 1.撰写代码 ...

  8. Ubuntu系统下安装opencv3.x并打开图片和视频文件以及打开摄像头录制视频

    目录 一.安装opencv 1.前置安装条件 2.安装环境 3.下载opencv3.4.11 4.解压安装包 5.开始安装 6.检查是否安装成功 二.显示图片和播放视频 1.显示图片 2.播放视频 三 ...

  9. Ubuntu通过fim或xdg-open在终端中打开图片

    文章目录 Fim 安装 使用 xdg-open 安装 使用 Fim 安装 FIM 意即 Fbi IMproved.Fbi 是指 Linux 中的 frame buffer imageviewer.它使 ...

最新文章

  1. python调用什么函数实现对文件内容的读取_如何使用python语言中的方法对文件进行读写操作...
  2. 线段树(点查询、区间查询、区间修改)模板
  3. 泰信通获得正唐资本首轮投资,加速进军SDN、云网市场
  4. JAVA开发环境及其开发
  5. P2056-[ZJOI2007]捉迷藏【点分树,堆】
  6. thrift linux java,Apache Thrift环境配置
  7. COGS182 [USACO Jan07] 均衡队形[RMQ]
  8. C#中,将16进制转换为有符号的10进制的方法(支持带0x标志,支持任意字符串)
  9. 谷歌发布Edge TPU芯片,云上模型本地运行丨附尝鲜地址
  10. nc扫描端口-curl-手动查杀木马过程之生成木马程序病原体并自动运行
  11. Ros编译 找不到package
  12. 电脑突然出现成功连接网络但不能上网、网络受限(解决办法)
  13. Android 四大组件学习之Activity二
  14. HDFView3.1.2的安装问题(闪退)
  15. 气味识别以及气味数字化存储技术
  16. lav点搜网metro风格分享
  17. Netty网络编程实战2,使用Netty开发聊天室功能
  18. 青龙面板哔哩哔哩抽奖白嫖
  19. 面试时英语自我介绍范文
  20. HBase的数据模型和存储原理

热门文章

  1. 华为mate10用的android版本,抢不到的手机HUAWEI华为Mate10简单使用报告
  2. 普通html使用引入element-ui,图标出错
  3. Pandas数据分析—使用stack和pivot实现数据透视
  4. 触控的手牌—Cocos Creator
  5. 模糊查询 按字数多少排序
  6. 有道云笔记android手写,有道云笔记Android新版发布 手写更逼真
  7. 搜狗高速浏览器怎么设置鼠标手势显示动作提示?设置方法是什么
  8. Java Formatter用法
  9. 松下打印机 计算机故障或繁忙,打印机常见故障的解决方法是什么
  10. 三相半波可控整流电路 电力电子技术仿真 Matlab/Simulink