2007年7月22日星期日

日本動畫片段

今天在網上找了一些日本動畫片段來看來放鬆一下.....

1. 涼宮舞

Mobile Suit Guundam OO

1. 人物機械介紹

2. TV CM #1

3. TV CM #2

2007年7月21日星期六

在 Fedora 7 下看 CHM (HTML Help) 檔案

由於不少電子書都是 CHM 檔案, 所以要在 Fedora 7 下看它們便需要安裝觀看 CHM 檔案的軟件 - ChmSee.

要在 Fedora 7 下安裝 ChmSee, 我們需要以下兩個檔案:

chmsee-1.0.0-0.17.beta2.fc7.i386.rpm
chmlib-0.39-1.fc7.i386.rpm

只要一起安裝以上的 RPM 檔案, 就可以使用 ChmSee 看 CHM 的電子書了.

2007年7月16日星期一

2007年7月15日星期日

在 Fedora 7 內編譯 wxFormBuilder 的源始碼

最近我正試用 wxFormBuilderwxWidgets 來開發 GNOME 的程式, 結果我發現 wxFormBuilder 有不少問題. 基於 wxFormBuilder 是開放源始碼的專案, 所以我便下載 wxFormBuilder 的源始碼來研究. 雖然我已經從它們的 SVN 伺服器下載了源始碼, 不過由於我之前是試用 Eclipse + CDT 來開發程式的, 所以當我發現 wxFormBuilder 的開發者是用 Code::Blocks 時, 沒辦法.....我只好安裝 Code::Blocks 好了:

1. 先從 BerliOS Developer 下載 Code::Blocks 最新的 Fedora RPM 版本 (這一陣子是 rev3975):
http://developer.berlios.de/project/showfiles.php?group_id=5358

2. 再下載 wxWidgets 的 RPM 檔案:
compat-wxGTK26-2.6.3-2.i386.rpm
wxGTK-2.8.3-2.fc7.i386.rpm

3. 先安裝 wxWidgets 的 RPM 檔案, 再安裝 Code::Blocks 的 RPM 檔案

4. 如果之前已經安裝好 wxWidgets 的開發版本, 執行 ldconfig /usr/local/lib 來更新 wxWidgets 的 shared library 的路徑

5. 用 SVN Client 來下載 wxFormBuilder 最新源始碼, 它的 URL:
https://wxformbuilder.svn.sourceforge.net/svnroot/wxformbuilder/3.x/trunk

6. 執行 ./create_build_files.sh (不用安裝 premake, 它已經在 /sdk/premake 資料夾內)

7. 完成後我們可以看到 wxFormBuilder.workspace 檔案, 我們只要用 Code::Blocks 來開啟它就可以編譯
wxFormBuilder 最新源始碼了.

2007年7月10日星期二

安裝 RealPlayer, Sun JVM 和 Adobe Reader 7

今天我在 Fedora 7 安裝 RealPlayer, Sun JVM 和 Adobe Reader 7, 其間遇到不少問題呢.

1. 安裝 RealPlayer

我首先下載 RealPlayer 的 Reahat Linux 版, 然後就安裝它, 其間都沒有什麼問題. 但奇怪就是我在 GNOME 按 RealPlayer 的圖示就是沒反應. 後來上網找資料才知道 RealPlayer 需要 libstdc++ 的舊版本, 結果我要上網下載 compat-libstdc++-33-3.2.3-47.fc4.i386.rpm 及安裝它才可以啟動 RealPlayer.

在找資料其間, 我發現如果 Linux 系統是用 ALSA 作聲音輸出時, RealPlayer 可能不會出聲. 原因就是 RealPlayer 不支援 ALSA 輸出. 所以需要下載 alsa-oss-1.0.12-4.fc7.i386.rpm 和 alsa-oss-libs-1.0.12-4.fc7.i386.rpm 及安裝它們, 然後修改 realplay (/usr/local/RealPlaer/) 這個檔案:

找尋:

if [ -n "$DEBUG" -a -x "$CATCHSEGV" ]; then
$CATCHSEGV $REALPLAYBIN ${1+"$@"}
else
while /bin/true; do
# Restart the player if exit code is 10
$REALPLAYBIN "$@"
if [ $? -ne 10 ]; then
break
fi
done
fi

取代為:

if [ -n "$DEBUG" -a -x "$CATCHSEGV" ]; then
$CATCHSEGV $REALPLAYBIN ${1+"$@"}
else
while /bin/true; do
# Restart the player if exit code is 10
aoss $REALPLAYBIN "$@"
if [ $? -ne 10 ]; then
break
fi
done
fi

目的就是加入 aoss,讓系統使用 alsa-oss 開啟 RealPlayer.

2. 安裝 SUN JVM

雖然 Fedora 7 安以安裝 GCJ 來執行 JAVA 程式, 不過 SUN 的 JVM 才是正宗. 因為我發覺用 GCJ 執行部份 JAVA 程式會有問題.

首先我先去 SUN 的 JAVA 網站下載 JDK 6u2 的 Linux RPM in self-extracting file 版本, 然後跟隨指示安裝, 之後就執行以下的 shell script:

#!/bin/bash
# Copyright (c) 2006 Dancefire (dancefire#gmail)
#
# 2 Steps to swap to Sun JDK
#
# 1. Download and install Sun Java JDK.
# 2. run this script
# 1) Tell the script the JDK directory
# 2) Help the script choose the Sun's java
# All done

echo "Configure Enviroment..."

read -p "Please tell me the JDK Directory, such as /usr/java/jdk1.5.0_07: " JDKDIR

JAVASH=/etc/profile.d/java.sh

echo "Linking to Mozilla plugins..."
ln -s $JDKDIR/jre/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/mozilla/plugins/libjavaplugin_oji.so

echo "Swap to Sun JDK ..."

if [ ! -f $JAVASH ]; then
# generate java profile
echo "export J2RE_HOME=$JDKDIR/jre" > $JAVASH
echo "export PATH=\$J2RE_HOME/bin:\$PATH" >> $JAVASH
fi

source $JAVASH

/usr/sbin/alternatives --install /usr/bin/java java $JDKDIR/bin/java 2

echo "Please choose '$JDKDIR/bin/java'"
/usr/sbin/alternatives --config java
/usr/sbin/alternatives --display java

echo "Successfully"

執行其間需要輸入 JDK 的路徑, 完成後選擇 SUN JVM 作為預設的 JAVA JVM 就可以了.

3. 安裝 Adobe Reader 7

其實安裝 Adobe Reader 7 的過程跟安裝 RealPlayer 有點相似, 就是先到 Adobe 網站下載 Adobe Reader 的 Linux 版, 然後安裝 RPM, 結果就是啟動不到 Adobe Reader.....

後來在網上找到解決辦法, 就是要修改 acroread (/usr/local/Adobe/Acrobat7.0/bin/) 這個檔案:

1. 找尋:

echo $mfile| sed 's/libgtk-x11-([0-9]*).0.so.0.([0-9])00.([0-9]*)|(.*)/123/g'

取代為:

echo $mfile| sed 's/libgtk-x11-([0-9]*).0.so.0.([0-9]*)00.([0-9]*)|(.*)/123/g'

2. 找尋:

MIN_GTK_VERSION="240"

取代為:

MIN_GTK_VERSION="2040"

完成後就可以啟動 Adobe Reader 了.

2007年7月8日星期日

Fedora 7 更新軟件二三事

Well, 話說回來當初我安裝 Fedora 7 時不是安裝所有軟件, 結果我想在離線下用 Package Manager 安裝 Fedora 7 DVD 內的軟件時, 雖然可以用之前的方法在離線狀態下用 Package Manager 來更新軟件, 不過就會出現兩個小問題:

1. 一進入 Package Manager 就會出現以下畫面, 令我覺得好像有什麼大問題似的.....儘管我可以直接按 List 頁就可以選擇需要安裝的軟件.



2. 雖然新軟件可以安裝, 不過當 Package Manager 更新畫面時就會出現以下畫面, 然後我可以做的就是按 Quit 鍵.....


為什麼 Package Manager 會出現 _getGroups:GroupsError 錯誤呢? 原來就是我當初用 createrepo 指令時沒有匯入 comps.xml 檔案. 而這個 comps.xml 就是儲存不同 RPM 檔案的分組資訊. 所以我可以做的是:

1. 無視以上問題! 反正軟件可以安裝就可以了.....
2. 自己動手做一個 comps.xml 檔案
3. 用一個現存的 comps.xml 檔案來欺騙 Package Manager

由於我是用 Fedora 7 DVD, 所以我可以用方法 3:

1. 複製 Fedora 7 DVD 內的 repodata 資料夾的 comps-f7.xml 到 /media 資料夾
2. 當要使用 createrepo 指令時, 輸入 createrepo -g comps-f7.xml ., 目的是匯入 comps-f7.xml 到自己的 repodata 內

然後當我再次啟動 Package Manager 時, 就會看到以下畫面:


不過呢, 如果要安裝的是從 Redhat 的 Fedora 7 更新網站 下載回來的更新檔案時, 不知道可不可以用這個 comps-f7.xml 檔案呢?

2007年7月7日星期六

KPlayer

今天為了看 MKV 的檔案, 在網上找找有什麼好的播放軟件. 結果找到一個叫 KPlayer 的軟件.
安裝和使用後發覺不錯啊, 雖然是韓國軟件, 但有中文介面.

Win32 EXE 下載連結:
KPlayer.exe

2007年7月6日星期五

之前為朋友寫的文件

在整理自己的文件時, 找到一些之前為朋友寫的文章. 不如放在這裡作過記錄, 免得將來忘了或者不小心刪除了又找不出來.

在 Microsoft 的 Windows 32 環境下執行 gcc 編譯器 (compiler)

在 Microsoft Win32 下使用 Subversion

安裝 PHP 5 、MySQL 和設定 Apache 伺服器

2007年7月1日星期日

Fedora 7 下安裝 Mplayer 1.0rc1

如果想在 Fedora 7 下看 AVI 檔案,其中一個方法就是安裝 MPlayer。我的安裝的方法如下:

1. 先從 http://mplayerhq.hu 下載3個檔案:

mplayer-1.0rc1.tar.bz2 <-- mplayer 的源始碼

essential-20061022.tar.bz2 <-- codecs

clearplayer-0.8.tar.bz2 <-- Skin,當然你可以下載其他的 skins

2. essential-20061022.tar.bz2 解壓 tar xf essential-20061022.tar.bz2),然後將全部內容複製到 /usr/local/lib/codecs

3. mplayer-1.0rc1.tar.bz2 解壓,進入 mplayer-1.0rc1 內,執行 ./configure --enable-gui,如果出現任何問題,請安裝有關軟件。有關的軟件都可以在 Fedora 7 DVD 內找到(例如:gcc),不用上網找。如果沒有問題,之後執行 make make install 就可以了。

4. clearplayer-0.8.tar.bz2 解壓,將全部內容複製到 /usr/local/share/mplayer/skins/default 內,完成後你就可以執行 Mplayer 了。如果想在終端機執行 MPlayer,你還需要將一個 TTF 檔案的連結 (link) 放在 ~/.mplayer 內,並改為 subfont.ttf,否則你會看到有關錯誤訊息。

5. 假設我們在GNOME 開啟 MPlayer,我們還需要作以下設定:

5.1 Preferences Font 頁內,設定 Font,字型檔案都是放在 /usr/share/fonts 內。


5.2 Preferences Font 頁內,設定 Subtitles & OSD:將 Encoding 設為 None 選擇 Unicode subtitle

以我目前的經驗所知,只要將字幕檔案(例如 SSA檔案)轉為 UTF8 編碼,再用以上設定就可以看到字幕,當然你要開啟字幕功能啦。

將字幕檔案(例如 SSA檔案)轉為 UTF8 編碼:

iconv –f <原來編碼> -t utf8 <來源檔案> -o <輸出檔案>

例如:

iconv –f utf16 –t utf8 01.ssa –o 001.ssa

不過,我有時會發現 Mplayer會出怪獸字,解決的方法是:

1. Preferences Font 頁內,設定 Subtitles & OSD:將 Encoding 設為 Unicode

2. 然後開啟字幕功能及播一部份片,期間你會看到部份字幕會正常。

3. 然後在 Preferences Font 頁內,設定 Subtitles & OSD:將 Encoding 設為 None

4. 然後重新播片,你會看到字幕會正常。

我不知道這是轉換的問題還是 MPlayer 的問題,總之用以上的方法就可以解決,看來有空的時候還需研究一下。




Fedora 7離線下用 YUM 和/或 Package Manager 來更新 RPM軟件

由於在預設的環境中, YUM 的設定是經由互聯網 (Internet) 來取得軟件更新資料。如果電腦沒法連上互聯網,那麼連 Package Manager也執行不到。

儘管我們可以用 RPM 來安裝 RPM 的軟件,但一遇上 dependence 的問題就煩了。所以,我們需要修改一下 YUM 的設定檔案,使到我們可以在離線狀態下利用 YUM 來安裝 RPM 軟件。

以下的方法是假設我們已經將所需的 RPM 檔案燒到一隻 CD 或 DVD 內並已經mount在 /media 的子目錄內(在 GNOME 內 double click 光碟機圖示,mount好的話你可以在桌面上看到圖示),或者將軟件放到 /media 的子目錄內。

1. 在終端機內輸入 cd /media
2. 在終端機內輸入 createrepo .,完成後我們可以在 /media 內看到一個 repodata 的目錄
3. 在終端機內輸入 yum clean all
4. 在終端機內輸入 /etc/yum.repos.d
5. 修改 fedora.repo:
5.1 將其他項目內的 enabled 設為 0
5.2 加入:
[Fedora DVD]
name=Fedora DVD
baseurl=file:///media
enabled = 1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

其中你可以留意到 Fedora DVD 只是個名稱,你可以改為其他名稱。baseurl是指路徑,這和一般 URL 的路徑沒有分別。由於我們的 repodata 目錄在本機的 /media 內,所以路徑便設為 file:///media。

然後我們再將其他 repo 檔案內的項目中的 enabled 改為 0,那麼我們便可以行用 YUM 和/或 Package Manager 來更新 RPM軟件。當然,如果我們更新了 RPM 檔案,我們便需要再執行 createrepo . 和 yum clean all 指令了。