<此文檔是 2008.02.17 讀研時的記錄,這近清檔案找出來,也許有人用得到,也許>
Kphone是2008年當時ipv6剛要推廣時,唯一支援IPv6的公用網路電話,同時間的Xlite並不支援IPv6,因此安裝他是測試IPv6網路電話的唯一解。
系統
# uname -a
Linux ax.er 2.6.18-8.el5 #1 SMP Thu Mar 15 19:57:35 EDT 2007 i686 i686 i386 GNU/Linux
Fedora 7
安裝
一、下載http://wire.cs.nthu.edu.tw/software.php 3.0版
他的說明,是只支援v6,而且是unix based。
Kphone is a tool for audio/video conferencing. WIRELab have ported it to operate on IPv6. This version is only for IPv6, IPv4 is *NOT* supported.
直接解壓出現錯誤:
tar: 保存檔含有過時的 base-64 標頭
解決方法:直接在windows下用winrar解完後再傳入。
二、安裝gcc-c++完後開始組態,出現錯誤
[root@ax kphone-ipv6-3.0]# ./configure
........
checking for extra libs... no
checking for X... configure: error: Can't find X includes. Please check your installation and add the correct paths!
找不到的檔案
configure:4581:27: error: X11/Intrinsic.h: No such file or directory
解法一、網路上說要安裝xorg-*,結果全裝了29個套件,錯誤不變
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
xorg-x11-drv-i810-devel i386 1.6.5-9.6.el5 base 8.5 k
xorg-x11-drv-via-devel i386 0.2.1-9 base 5.1 k
xorg-x11-fonts-ISO8859-14-100dpi noarch 7.1-2.1.el5 base 1.0 M
xorg-x11-fonts-ISO8859-14-75dpi noarch 7.1-2.1.el5 base 903 k
xorg-x11-fonts-ISO8859-15-100dpi noarch 7.1-2.1.el5 base 1.1 M
xorg-x11-fonts-ISO8859-15-75dpi noarch 7.1-2.1.el5 base 932 k
xorg-x11-fonts-ISO8859-2-100dpi noarch 7.1-2.1.el5 base 1.0 M
xorg-x11-fonts-ISO8859-2-75dpi noarch 7.1-2.1.el5 base 900 k
xorg-x11-fonts-ISO8859-9-100dpi noarch 7.1-2.1.el5 base 1.1 M
xorg-x11-fonts-ISO8859-9-75dpi noarch 7.1-2.1.el5 base 931 k
xorg-x11-fonts-cyrillic noarch 7.1-2.1.el5 base 392 k
xorg-x11-fonts-ethiopic noarch 7.1-2.1.el5 base 160 k
xorg-x11-fonts-syriac noarch 7.1-2.1.el5 base 1.2 M
xorg-x11-proto-devel i386 7.1-9.el5.centos base 253 k
xorg-x11-resutils i386 7.1-2.fc6 base 61 k
xorg-x11-server-Xdmx i386 1.1.1-48.26.el5 base 918 k
xorg-x11-server-Xephyr i386 1.1.1-48.26.el5 base 1.6 M
xorg-x11-server-Xvfb i386 1.1.1-48.26.el5 base 1.6 M
xorg-x11-server-sdk i386 1.1.1-48.26.el5 base 367 k
xorg-x11-util-macros i386 1.0.2-4.fc6 base 8.1 k
xorg-x11-xbitmaps i386 1.0.1-4.1 base 32 k
xorg-x11-xfs-utils i386 1:1.0.2-4 base 27 k
xorg-x11-xfwp i386 1.0.1-3.1 base 46 k
xorg-x11-xsm i386 1.0.2-4.fc6 base 76 k
xorg-x11-xtrans-devel i386 1.0.1-1.1.fc6 base 66 k
Updating:
xorg-x11-apps i386 7.1-4.0.1.el5 base 254 k
xorg-x11-drv-evdev i386 1:1.0.0.5-3.el5 base 10 k
xorg-x11-drv-i810 i386 1.6.5-9.6.el5 base 284 k
xorg-x11-drv-keyboard i386 1.1.0-3 updates 14 k
xorg-x11-drv-mga i386 1.4.2-6.el5 base 82 k
xorg-x11-drv-nv i386 2.1.2-1.el5 base 112 k
xorg-x11-drv-vesa i386 1.3.0-8.1.el5 base 19 k
xorg-x11-server-Xnest i386 1.1.1-48.26.el5 base 1.5 M
xorg-x11-server-Xorg i386 1.1.1-48.26.el5 base 3.2 M
xorg-x11-xfs i386 1:1.0.2-4 base 68 k
Installing for dependencies:
libX11-devel i386 1.0.3-8.0.1.el5 base 665 k
libXau-devel i386 1.0.1-3.1 base 11 k
libXdmcp-devel i386 1.0.1-2.1 base 7.5 k
mesa-libGL-devel i386 6.5.1-7.5.el5 base 465 k
Updating for dependencies:
libX11 i386 1.0.3-8.0.1.el5 base 796 k
mesa-libGL i386 6.5.1-7.5.el5 base 9.7 M
Transaction Summary
=============================================================================
Install 29 Package(s)
Update 12 Package(s)
Remove 0 Package(s)
Total download size: 32 M
解法二、網路上說要安裝 libXext-devel,事實上,問題沒解決
(1/1): libXext-devel-1.0. 100% |=========================| 57 kB 00:00
解法三、網路上目前已知的解法不能用,不過被我試出來了,再加安裝這個libXt-devel問題就解決了,注意X要大寫
[root@ax kphone-ipv6-3.0]# yum install libXt-devel
Installing: libICE-devel ######################### [1/3]
Installing: libSM-devel ######################### [2/3]
Installing: libXt-devel ######################### [3/3]
checking for X... libraries /usr/lib, headers .
checking for IceConnectionNumber in -lICE... yes
checking for libXext... yes
checking for libpng... no
checking for Qt... configure: error: Qt (>= Qt 2.2.2) (headers and libraries) not found. Please check your installation!
通過了,不過出現另一個Qt的問題。
三、先裝qt
[root@ax kphone-ipv6-3.0]# yum install qt
Downloading Packages:
(1/1): qt-3.3.6-23.el5.i3 100% |=========================| 3.6 MB 00:01
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : qt ######################### [1/2]
Cleanup : qt ######################### [2/2]
錯誤依舊
再安裝qt-devel
[root@ax kphone-ipv6-3.0]# yum install qt-devel
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
qt-devel i386 1:3.3.6-23.el5 base 11 M
Installing for dependencies:
fontconfig-devel i386 2.4.1-6.el5 base 168 k
freetype-devel i386 2.2.1-19.el5 base 150 k
libXcursor-devel i386 1.1.7-1.1 base 14 k
libXft-devel i386 2.1.10-1.1 base 16 k
libXinerama-devel i386 1.0.1-2.1 base 5.1 k
libXrandr-devel i386 1.1.1-3.1 base 14 k
libXrender-devel i386 0.9.1-3.1 base 8.8 k
libjpeg-devel i386 6b-37 base 105 k
libmng-devel i386 1.0.9-5.1 base 53 k
libpng-devel i386 2:1.2.10-7.1.el5_0.1 updates 182 k
mesa-libGLU-devel i386 6.5.1-7.5.el5 base 91 k
Updating for dependencies:
freetype i386 2.2.1-19.el5 base 313 k
libpng i386 2:1.2.10-7.1.el5_0.1 updates 242 k
mesa-libGLU i386 6.5.1-7.5.el5 base 228 k
Transaction Summary
=============================================================================
Install 12 Package(s)
Update 3 Package(s)
Remove 0 Package(s)
Total download size: 13 M
checking for Qt... configure: error: Qt (>= Qt 2.2.2) (libraries) not found. Please check your installation!
問題解決了一半,注意括弧中的headers不見了,只剩libraries
現在卡在這裡,網路上的解決方法目前試過還無法解決(卡了好久)
四、組態加參數得解
網路上說要裝qt3-devel,結果沒有for fedora的這個。原來在fedora系列中,qt-devel 3.x.x就是 qt3-devel
不過找到一個網站http://www.kde-apps.org/content/show.php/Kvdr?content=63816
# ./configure --enable-mt 加參數 --enable-mt 得解
checking for Qt... libraries /usr/lib/qt-3.3/lib, headers /usr/lib/qt-3.3/include using -mt
checking if Qt compiles without flags... no
....
checking for KDE... configure: error:
in the prefix, you've chosen, are no KDE headers installed. This will fail.
So, check this please and use another prefix!
再出錯
五、安裝kdelibs-devel
[root@ax kphone-ipv6-3.0]# yum install kdelibs-devel
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
kdelibs-devel i386 6:3.5.4-13.el5.centos base 1.3 M
Installing for dependencies:
alsa-lib-devel i386 1.0.14-1.rc4.el5 base 1.4 M
arts i386 8:1.5.4-1 base 1.1 M
arts-devel i386 8:1.5.4-1 base 213 k
audiofile-devel i386 1:0.2.6-5 base 15 k
avahi-devel i386 0.6.16-1.el5 base 38 k
avahi-qt3 i386 0.6.16-1.el5 base 17 k
bzip2-devel i386 1.0.3-3 base 38 k
esound-devel i386 1:0.2.36-3 base 32 k
glib2-devel i386 2.12.3-2.fc6 base 1.3 M
kdelibs i386 6:3.5.4-13.el5.centos base 18 M
kdnssd-avahi i386 0.1.3-0.1.20060713svn.fc6 base 43 k
kdnssd-avahi-devel i386 0.1.3-0.1.20060713svn.fc6 base 11 k
libacl-devel i386 2.2.39-2.1.el5 base 81 k
libart_lgpl-devel i386 2.3.17-4 base 20 k
libattr-devel i386 2.4.32-1.1 base 33 k
libgcrypt-devel i386 1.2.3-1 base 272 k
libgpg-error-devel i386 1.4-2 base 17 k
libidn-devel i386 0.6.5-1.1 base 239 k
libogg-devel i386 2:1.1.3-3.el5 base 73 k
libtiff-devel i386 3.8.2-7.el5 base 475 k
libvorbis-devel i386 1:1.1.2-3.el5.0 base 541 k
libxml2-devel i386 2.6.26-2.1.2 base 2.1 M
libxslt-devel i386 1.1.17-2 base 295 k
pcre-devel i386 6.6-2.el5_1.7 updates 176 k
Updating for dependencies:
alsa-lib i386 1.0.14-1.rc4.el5 base 406 k
pcre i386 6.6-2.el5_1.7 updates 112 k
Transaction Summary
=============================================================================
Install 25 Package(s)
Update 2 Package(s)
Remove 0 Package(s)
Total download size: 29 M
安裝完重新組態又出現新的錯誤
checking for kdb2html... not found
configure: error: The important program kdb2html was not found!
Please check whether you installed KDE correctly.
這個問題一堆人在問,沒什麼結論,不過有一個解法:
kdb2html is a program of KDE3.2
downgrade to KDE3.2
copy the program (it's only a shell script)
get your old kde (in my case 3.5.1)
copy kdb2html into /opt/kde..../bin/
chmod 777 kdb2html
意思是說kdb2html是KDE3.2的程式,請降版本到3.2,我是3.5.2,找到他,拷背到/opt/kde和/bin/
但是我移除kde-devel 3.5後,用rpm去裝3.1或3.2卻出現一大堆的相依性問題。
卡了很久,放棄。
六、去網路下載新版的kphone-4.2.tar.gz
組態沒問題,不過編譯卻出錯了。
[root@ax kphone]# make
.....
/usr/lib/qt-3.3/include/qxml.h:448: 警告:「class QXmlLexicalHandler」 有虛函式卻沒有虛解構函式
/usr/lib/qt-3.3/include/qxml.h:461: 警告:「class QXmlDeclHandler」 有虛函式卻沒有虛解構函式
kcallwidget.h:70: 錯誤:有多餘的限定 「KCallWidget::」 於成員 「setDTMFSender」 上
kphoneview.h:57: 錯誤:有多餘的限定 「KPhoneView::」 於成員 「DoCall」 上
make[1]: *** [main.o] Error 1
make[1]: Leaving directory `/root/kphone/kphone'
make: *** [all] Error 2
這個部落格有人提供解法 http://kedych.blogspot.com/2007/07/imskphone.html
1.1 kphone/kphoneview.h:57
//KCallWidget *KPhoneView::DoCall( QString num, SipCall::CallType ctype );
KCallWidget *DoCall( QString num, SipCall::CallType ctype );
1.2 kphone/kcallwidget.h:70
//void KCallWidget::setDTMFSender( QString &s );
void setDTMFSender( QString &s );
照著改
有出現一些qt3.3的警告,可是不影響編譯。
/usr/lib/qt-3.3/include/qxml.h:224: 警告:「class QXmlReader」 有虛函式卻沒有虛解構函式
......
[root@ax kphone]# make install 可以順利執行完畢。
目的在 /usr/local/bin/kphone 把他丟到桌上即可執行。
放棄不表示不願面對挑戰,放棄也許在會其他地方找到解決的關鍵。
七、FEDORA 7 安裝kphone 4.2
[root@pc kphone]# uname -a
Linux pc.er 2.6.21-1.3194.fc7 #1 SMP Wed May 23 22:35:01 EDT 2007 i686 i686 i386 GNU/Linux
組態出現問題
checking location of Qt header files...
not found. Giving up.
安裝完 qt*後要重開機,就順利通過
configure: error: libssl not found
[root@pc kphone]# yum install openssl*
安裝完就解決這個問題
八、裝完發現kphone 4.2只支援v4;v6的話要安裝這個最後的套件kphone-ipv6-3.11
所以問題五還是要處理,無法逃避;這下子必需要有kdb2html這個檔案;網路上說此檔是在
kdelibs-devel-3.2.2-4.i386.rpm中,而且是fedora core 1的時候就有了
嘗試安裝
[root@pc ~]# rpm -ivh kdelibs-devel-3.2.2-4.i386.rpm
error: Failed dependencies:
arts-devel is needed by kdelibs-devel-3.2.2-4.i386
fam-devel is needed by kdelibs-devel-3.2.2-4.i386
kdelibs = 6:3.2.2-4 is needed by kdelibs-devel-3.2.2-4.i386
libart_lgpl-devel is needed by kdelibs-devel-3.2.2-4.i386
libstdc++.so.5 is needed by kdelibs-devel-3.2.2-4.i386
libstdc++.so.5(CXXABI_1.2) is needed by kdelibs-devel-3.2.2-4.i386
libstdc++.so.5(GLIBCPP_3.2) is needed by kdelibs-devel-3.2.2-4.i386
可怕的相依性問題。
[root@pc ~]# rpm -ivh libstdc++-3.3.3-7.i386.rpm
Preparing... ########################################### [100%]
package libstdc++-4.1.2-27.fc7 (which is newer than libstdc++-3.3.3-7) is already installed
已經有新版的4.1.2;舊版的裝不上去
無法移除因為他的關連相關性太多了,看來kphone-ipv6是2004年released,查一下那是fedora core 1
的時代,所以目前想過的方法有三:一個修改configure檔使他避過這個問題、二是安裝舊版、三就只剩下去
找到core1的版本了..... 網路上下載點都不見了(因為太占空間,現在都出到core8了),不過我知道哪裡
有原始片
九、此問題在我重裝fedora core 1後刃而解
安裝時記得勾選KDE相關套件;該檔只是一個沒有用的shell,
早知道就寫一個空的去騙他就好了。kdb2html檔案內容如下:
#! /bin/sh
echo "this script does nothing. Convert your documentation to XML DTD 4.1.2"
echo "otherwise provide HTML. This should do nothing, because either the HTML"
echo "is already there or the application should use meinproc and XML"
拷背到 /usr/bin 就好了。後來發現只要新增一個叫kdb2html的空檔就好了
後面組態很順利,編譯也很順利。
十、執行出現程式記憶體區段錯誤
[root@ax kphone]# ./kphone
程式記憶體區段錯誤
這裡有網路上相關的提問,沒有確切的解答。
http://fedora.tw/modules/newbb/viewtopic.php?viewmode=flat&order=ASC&topic_id=1479&forum=5&move=prev&topic_time=1177910206
xwindow視窗的也無法執行(沒畫面沒錯誤),不知原因為何?所以我又裝了3.0版(清大的版本)問題依舊。
目前想的到的是不是要有一個純的v6介面?不過試過了也是沒用,是不是要到core1的平台才能執行呢?
還是要設定什麼檔才會執行?
十一、問題順利解決,我找到了fedora core1 ,直接裝不會有任何問題。
舊程式只能跑在系統中…繞了一圈白遮騰..
唉...
為了這個舊系統,還得去找一台主機來安裝,因為他有麥克風和喇叭的需要,無法裝在vm中(那時vm已漸漸流行)
kphone的一些畫面(撥號)