好好接触一下Linux世界的事物,于是就开始折腾起之前没用过的各种各样的软件来,其中之一就是窗口管理器Sawfish。

窗口管理器这个名字,虽然以前也听过不少次,但是直到最近开始了解与Linux上的图形界面相关的知识时才算真正认识了一次。顾名思义,窗口管理器管理的对象是窗口,但是它管理窗口的什么事呢?不是底层的对图像的绘制,那是X服务器所做的;也不是决定图形界面的外观,那是开始工具包所决定的。窗口管理器所掌管的领域,是窗口的标题栏、边框的显示以及移动、缩放等操作。

Ubuntu 10.04自带的窗口管理器是Compiz和Metacity,而Sawfish则是Ubuntu曾经使用过的窗口管理器。不过窗口管理器有那么多,干嘛我要选择Sawfish呢?第一原因当然是心血来潮,第二原因是因为这个Sawfish的配置文件是使用Lisp来编写的。Lisp,是我非常喜欢的语言,可以用它来管理我的系统的一部分,练练实际操作能力,当然是不亦乐乎啦。不过对于使用Sawfish而言,或许并不需要掌握Lisp,因为Sawfish提供了一个图形界面的配置程序sawfish-config,鼠标点击同样可以完成对Sawfish的配置。

Ubuntu的源里面有可以直接安装的Sawfish,不过对于有点使用新版本强迫症的我来说,还是倾向于从最新的源代码开始编译进行安装,尽管这样做比较麻烦。首先需要去官方网站下载三个压缩包回来,分别是librep、rep-gtk和sawfish,先编译安装librep。安装这个玩意儿需要先装上相关的依赖,依赖这种东西是很难说得彻底的,毕竟我不是开发人员,不完全知道编译librep到底需要什么东西,因此我所列举的依赖也许并不完全。在我的系统上,需要安装如下几个东西,命令如下

sudo apt-get install libgmp3-dev libgdbm-dev autoconf libtool

接下来你需要运行的命令是``./autogen.sh ; make ; sudo make install ; sudo ldconfig''。注意,在将所有必要的文件放置到恰当的位置后,也就是执行了第三条命令后,还需要运行``sudo ldconfig''以使新的动态链接库生效。这样,librep就安装完毕了,然后是rep-gtk,它的安装相比之下比较简单,直接是``./configure ; make ; sudo make install''就可以了。然后,也就到了最后也最重要的sawfish本身,所需要执行的命令和rep-gtk的安装过程是一样的。至此,全部安装完毕,Sawfish已经可以使用。【 Linux公社 www.Linuxidc.com 】如果你迫不及待的想看一下Sawfish长什么样子,可以在终端输入sawfish --replace。

其实在librep的压缩包所解压出来的文件夹中,也有configure脚本,不过这里没有使用,这是有原因的。其实我一开始安装时也使用了./configure命令,只是后来在编译,也就是运行make命令的时候,出现了错误并且我解决不了,因此我开始另辟蹊径。最后,在误打误撞的情况下,发现原来像前面所说的那样,先用./autogen.sh就可以成功编译了,因此也就有了现在的这种安装方式。

尽管Sawfish已经安装好了,不过怎么把它配置成非常适合自己的窗口管理器,又怎么把它设置为默认启动的窗口管理器等问题,我还没有去研究,不过只要Sawfish成功安装了,可以顺利启动了,那么接下来的一切也就是时间和耐心问题了,好吧,安装了Sawfish的各位,开始摸索这款窗口管理器吧。

linux 编译窗口,Ubuntu 10.04上编译安装Sawfish窗口管理器相关推荐

  1. 在32位Ubuntu 10.04上编译Android 2.3

    在32位Ubuntu 10.04上编译Android 2.3 http://www.ylmf.net/ubuntu/tips/2011021722700.html 本人在Ubuntu 10.04系统 ...

  2. linux skyeye,在Ubuntu 10.04上安装SkyEye及测试

    说明一下,在Ubuntu 10.04上安装SkyEye方法不是原创,是来自互联网,仅供学习参考. 1.检查支持软件包 gcc, make, vim(optional), ssh, subversion ...

  3. 苹果linux桌面文件夹,Ubuntu 10.04下一键安装Mac OS X主题桌面

    不久前的<Ubuntu 10.04下Mac OS X风格桌面美化安装>遭到网友的砖头,认为和Mac OS X风格桌面美化安装根本没有关系.本来是要跟这篇一起发布的,一等就等了这么长,下面我 ...

  4. pppoe linux软件,在Ubuntu 18.04上编译安装pppoe客户端软件

    PPPoE(以太网上的点对点协议Point-to-Point Protocol over Ethernet)是许多DSL Internet服务提供商使用的协议. RP-PPPoE是Linux的免费PP ...

  5. 在Ubuntu Server14.04上编译Android6.0源码

    此前编译过Android4.4的源码,但是现在Android都到了7.0的版本,不禁让我感叹Google的步伐真心难跟上,趁这周周末时间比较充裕,于是在过去的24小时里,毅然花了9个小时编译了一把An ...

  6. cd linux自带系统安装,Windows 7+CDLinux+Ubuntu 10.04全硬盘安装

    前提: 1.笔记本或者台式机,本资料只在笔记本上进行过实际安装,但是理论上台式机应该也一样 2.使用Windows 7的bcd启动,直接可以引导Windows 7,CDLinux,MaxDOS8,Ub ...

  7. linux grub2 修复,Ubuntu 10.04修复GRUB2

    在Ubuntu系统之后安装其他系统,会将Ubuntu的grub破坏掉,Ubuntu 10.04已经使用grub2了.我尝试用9.04的livecd去修复,一直报错,而且想chroot也不成,个人能力不 ...

  8. ubuntu 10.04 联想G450 安装无线网卡驱动

    原文来自http://wenku.baidu.com/view/171ac6afd1f34693daef3efc 亲自实践,特此记载 ubuntu 10.04 联想G450 无线网灯不亮,所以要把它的 ...

  9. gt 630 linux驱动下载,Ubuntu 13.04 双显卡安装NVIDIA GT 630M驱动

    Linux系统:Ubuntu 13.04 安装 bumblebee 以管理双显卡,下面命令会自动安装NVIDIA显卡驱动 sudo add-apt-repository ppa:bumblebee/s ...

最新文章

  1. JS 中settimeout和setinterval函数的区别
  2. centos6.8安装 gitlab 9.3.5及使用
  3. kafka 串讲:架构模型、角色功能梳理
  4. javascript常用对象
  5. Spark on Yarn查看删除日志
  6. 推荐一个国外的关于奥运报道的网站.
  7. systemctl start named失败的解决方法_有关平安银行的提额方法和提额失败的解决方法...
  8. mysql主从复制是拉模式吗,CentOS 7系统配置MySQL的主从复制模式 (Master-Slave Replication)...
  9. 机器学习概念篇:监督学习、过拟合,正则化,泛化能力等概念以及防止过拟合方法总结
  10. intouch historian 配置
  11. pythonsqlite加锁_Python SQLite:数据库被锁定
  12. 模块手机Project Ara的MDK(Module Developers Kit)模块开发套件
  13. 滴滴分析专家8000字干货:数据如何驱动业务增长 ?
  14. 2029年会实现通用人工智能吗?
  15. C# 利用 Spire.PDF 实现.pdf转图片
  16. Python!Python!
  17. 3dmax用云渲染好还是本地渲染好?云渲染哪个好用?
  18. phpmyadmin CVE-2016-6617 SQL注入漏洞
  19. 傅盛认知三部曲后记:到底什么是认知?
  20. mysql创建部门表和员工表,并用sql语句进行查询

热门文章

  1. 朴素贝叶斯分类实战:对文档进行分类
  2. 【JAVA编码专题】 JAVA字符编码系列三:Java应用中的编码问题
  3. Elasticsearch文档的CRUD
  4. 面试题整理(机器学习、数据结构)
  5. 新手的深度学习综述 | 入门
  6. javaweb学习总结(九):通过Servlet生成验证码图片
  7. GMQ稳定币为区块链资产在金融市场的进一步应用打开了一扇大门
  8. Android自己搭建一个实用的SharedPreferences管理类
  9. 基于sentry的前端错误监控日志系统(部署sentry服务器/前端项目部署)-让前端最快的定位到生产问题...
  10. 基于springMVC拦截器实现操作日志统计