歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在 Ubuntu 9.04 上安裝 Kscope

在 Ubuntu 9.04 上安裝 Kscope

日期:2017/2/28 16:44:54   编辑:Linux教程

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 就可以正常運行了。Ubuntu 9.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."

本文來自http://blog.solrex.cn/articles/install-kscope-on-ubuntu-9-04.html

Copyright © Linux教程網 All Rights Reserved