小杂
来源:互联网 发布:muipicker js 编辑:程序博客网 时间:2024/04/28 14:31
Kscope : LINUX看内核的好工具
http://kscope.sourceforge.net/
http://kscope.sourceforge.net/sshots.shtml
在 Ubuntu 9.04 上安装 Kscope
Kscope 是我很喜欢的 Linux 平台上的代码查看工具,因为我不会用 Emacs,vim + ctags 又用得不熟,看看小程序还可以,看大项目就傻眼了。以前也尝试过 Source-Navigator(这个项目N年没更新,06年时候我装都装不上,08年底居然又复活了,有空了再去试试)、Eclipse、Kdevelop、CodeBlocks,总之都没有 Kscope 用着最舒服。Kscope 让我欣赏的特点主要有:
1. 它号称是代码编辑环境(source-editing environment),而不是IDE。我不用在建立 Kscope 项目时烦心地去选择项目类型、编译器、编译选项等等。编译我有 Makefile,我就是找个工具看看代码,用得着那么麻烦吗。 建立 Kscope 项目时只需要干两件事:选择项目名、项目保存地址和添加源文件。
2. 它不会在源文件目录下建立一堆乱七八糟的文件,影响市容。我记得Eclipse、CodeBlocks 等都会把项目信息保存在源文件目录下,而 Kscope 的项目保存位置可以自己选,比如我一般都保存在workspace/kscope 目录下面,这样对要查看的源文件目录没有任何影响。因此 Kscope的项目和源文件基本没关系,我可以添加任何位置的源文件到某个项目中去。
3. 它不会去读非指定类型的文件。这是针对 Eclipse 来说的,每次在 Eclipse 项目中搜索时,一堆 .svn 目录中文件的结果让我感觉非常闹心,两年没用不知道现在的 Eclipse 是不是更智能点儿了,但是 Eclipse 改不了的毛病就是慢和吃内存。
4. 它支持代码查看的基本功能。其实我最常用的也就那么几个功能:语法高亮、同时打开多文件、整个项目中搜索字符串、查找函数定义位置和引用、项目文件列表+搜索。在这些条上据说 Windows 下的 SourceInsight 做得更好,但我没用过没有发言权。
简而言之,Kscope 与其它工具比就是快、简单、省心。但是时代在变革呀,转眼到了 KDE4 的时代,而 Kscope 仍然停留在 KDE3.5 上。现在的 Ubuntu 9.04 的依赖关系里,居然已经撤掉了 Kscope,在 9.04 上 sudo apt-get install kscope,会得到这样的消息:E: Couldn't find package kscope,真是让人丧气。
其实 Kscope 之所以不能安装,主要原因是它依赖于 Kate 的两个库:libkateinterfaces.so.0 和libkateinterfaces.so.0,只需要从 KDE3.5 的 Kate 中提取出来这两个库安装到系统中后,Kscope就可以正常运行了。Ubuntu9.04 的依赖关系中虽然找不到 Kscope,但是 Ubuntu 的软件仓库中还有 Kscope的包,我们可以手动下载安装。下面这个脚本的功能就是自动安装 kscope 到 Ubuntu 9.04,稍微修改一下也可以用于在其它 KDE4桌面系统中安装 Kscope,或者解决 Kscope 无法运行的问题。您也可以从这里下载到该脚本:
#!/bin/bash
# This script helps you install Kscope on Ubuntu 9.04.
# You can also use it to fix "Kscope doesn't run in KDE4" bug.
echo "Determining machine hardware name... "
MACHINE=`uname -m`
case "$MACHINE" in
i386 | i586 | i686)
ARCH="i386"
;;
x86_64)
ARCH="amd64"
;;
*)
ARCH="i386"
;;
esac
# If Kscope is not installed, install it.
which kscope &> /dev/null
if [ $? -ne 0 ]; then
echo "Installing kscope..."
sudo apt-get install kscope || /
wget http://archive.Ubuntu.com/ubuntu/pool/universe/k/kscope/kscope_1.6.0-1_${ARCH}.deb && /
sudo dpkg -i kscope_*.deb || /
sudo apt-get -fy install || /
echo "Oops, some error happens..."
fi
kscope -v &> /dev/null
if [ $? -eq 0 ]; then
echo "Kscope works fine."
exit
fi
echo "Downloading KDE3 libraries needed by kscope..."
wget http://ftp.debian.org/debian/pool/main/k/kdebase/kate_3.5.9.dfsg.1-6_${ARCH}.deb
dpkg -x kate_3*.deb kate
echo "Installing KDE3 libraries..."
sudo cp kate/usr/lib/libkateinterfaces.so.0.0.0 /usr/local/lib/
sudo cp kate/usr/lib/libkateutils.so.0.0.0 /usr/local/lib
sudo ln -s /usr/local/lib/libkateinterfaces.so.0.0.0 /usr/local/lib/libkateinterfaces.so.0
sudo ln -s /usr/local/lib/libkateutils.so.0.0.0 /usr/local/lib/libkateutils.so.0
sudo ldconfig
echo "Finished."
sudo apt-get install build-essential ncurses-dev gettext
sudo apt-get install linux-headers-`uname -r`
驱动最好在alsa网站去下alsa-driver-*、alsa-lib-*、alsa-utils-*3个包就行了,最新的是1.0.16版。你可以检查你现在使用的驱动版本,用命令alsactl -v ,如果一样就没必要安装了。
一切ok的话就进行下面步骤:
首先停止当前的ALSA服务:
sudo /etc/init.d/alsa-utils stop
2、分别解压缩3个源码包到相应的不同的文件夹并编译安装。(以下命令均在相应目录下)依次编译安装。
alsa-driver-*:
./configure --with-cards=***(此处为你的声卡的控制器芯片,注意不是alc883,而是查询出来的结果) --with-sequencer=yes
make
sudo make install
alsa-lib-*
./configure
make
sudo make install
alsa-utils-*
./configure
make
sudo make install
替换原驱动
sudo modprobe snd-***(此处也是你的声卡的控制器芯片,是查询出来的结果) ; modprobe snd-pcm-oss ; modprobe snd-mixer-oss ; modprobe snd-seq-oss
重新启动alsa
sudo /etc/init.d/alsa-utils restart
重启计算机,可能会发现音量图标上有个红叉,需要在音量控制界面中将PCM的静音取消。之后查看当前驱动版本是否为最新。
alsactl -v
- 小杂
- linux小技巧小软件@杂
- (杂)小知识点
- 杂(各类小细节)
- 比较杂的小算法
- 小杂2-fedora 更新源
- 很杂的一些小总结
- 杂_各种IT小技巧摘录
- 小公司之所以小
- 小故事 小哲理
- 小笑话小启示
- 小问题小知识
- 小代码、小算法
- 小技巧、小经验
- 小总结小展望
- 小技巧、小tips
- 小技巧,小知识
- 小知识点,小方法
- 搜索框输入内容回车后如何触发搜索按钮,自动打开网页
- 系统架构设计师的工作范畴
- Struts2使用20 -- 注解配置2 -- 生命周期回调注解(拦截器注解)
- 3.1 配置任意目录下的Web应用程序
- fileOutPutSream文件传送--出现的错误
- 小杂
- Linux C++
- Kernel : likely/unlikely macros
- 总结 FileInputStream 与 FileOutputStream. BufferedInputStream 与 BufferedOutputStream
- SQL2005中的事务与锁定(八)
- 获得关于 错误信息 说明信息
- 飞鸽传书FreeEIM买还是不买?
- wince驱动加载顺序冲突
- Lucene 2.9.0 更新说明