2010年10月14日 星期四

在Linux mint 8 (Ubuntu 9.10)下安裝ns 2.29

.

之前雖然成功的在Fedora Core 5下成功的安裝了ns 2.29和BittorrentSim
但是我常用的VM還是LinuxMint 8

若要同時開兩個VM,這不是個辦法
真要解決問題,還是得在Linux mint 8 (Ubuntu 9.10)下將ns 2.29裝起來才行

你會看到這篇文章的出現,就代表我已經成功的裝了起來

1.下載ns-allinone-2.29.3.tar.gz並解開

tar zxvf ns-allinone-2.29.3.tar.gz


2.在.bashrc下設定一些變數,設定完後logout,再login一次,讓變數發生作用
我自己的變數設定如下:


NSPATH229=$HOME/ns-allinone-2.29

PATH=$NSPATH229/bin:$NSPATH229/tcl8.4.11/unix:$NSPATH229/tk8.4.11/unix:$PATH
LD_LIBRARY_PATH=$NSPATH229/otcl-1.11:$NSPATH229/lib
TCL_LIBRARY=$NSPATH229/tcl8.4.11/library
export NSPATH229 PATH LD_LIBRARY_PATH TCL_LIBRARY


PS:
這裡的變數設定有參考 linux下安裝ns
但為什麼我的變數為NSPATH229而非NSPATH?
因為我之前有安裝過ns2.34,NSPATH已經被用掉了,因此我將原來的NSPATH comment掉,而NSPATH229就留給ns2.29

3.
在ns-allinone-2.29下,執行

grep 'system=MP-RAS-' ***/*/* -n

結果應如下:


將system=MP-RAS-`awk '{print $3}' /etc/.relid'`
'刪除
變成system=MP-RAS-`awk '{print $3}' /etc/.relid`
將所有有多出'的Makefile.in的行改掉,如下圖


4.我在這裡會遇到下面的問題:

undefined reference to `__stack_chk_fail_local'
ld: libotcl.so: hidden symbol `__stack_chk_fail_local' isn't defined
ld: final link failed: Nonrepresentable section on output
make: *** [libotcl.so] Error 1
otcl-1.11 make failed! Exiting ...

解法是參考這裡:NS-2 problem llType


簡單說,先安裝一些套件:

sudo apt-get install libx11-dev libxmu-dev libxmu-headers libxt-dev libtool g++-4.1

再下載tk-8.4-lastevent.patch (點我下載)
然後進入ns-allinone-2.29/tk-8.4.11/下

cd ns-allinone-2.29.3/tk-8.4.11/

執行:

patch -p0 < tk-8.4-lastevent.patch


再修改下列目錄中的"Makefile.in",將@CC@改成gcc-4.1,@CPP@改成g++-4.1

otcl-1.11/, line 7 : CC = gcc-4.1
tclcl-1.17/, line 40 : CC = gcc-4.1
tclcl-1.17/, line 41 : CPP = g++-4.1
ns-2.29/ , line 36 : CC = gcc-4.1
ns-2.29/ , line 37 : CPP = g++-4.1
nam-1.11/, line 44 : CC = gcc-4.1
nam-1.11/, line 45 : CPP = g++-4.1


若你在這之前有執行ns-allinone-2.29下的./install過,記得到ns-allinone-2.29/otcl-1.11/中執行make clean
(原文有說還要砍掉"Makefile",但我實驗的結果是,make clean即會砍掉"Makefile")

到這裡,我執行完ns-allinone-2.29下的./install
ns2.29就裝起來了

可喜可賀

.

2010年10月6日 星期三

在Windows 7,錄製桌面時沒有聲音 (Realtek HD打開立體聲混音)

.

最近需要在Windows 7下面錄製桌面,遇到的最大困難為錄製不到聲音……
我的Notebook的音效晶片為Realtek ALC662


首先,Realtek HD立體聲混音(Sterio Mix)裝置是隱藏的,且被停用
要打開它

這是Realtek(瑞昱)的裝置管理員圖示


在該圖上按右鍵,選音訊裝置


接著,先將頁面切換到錄製頁面
在下面的裝置上,按右鍵,選擇"顯示已停用的裝置"


如圖,在"顯示已停用的裝置"被打勾後,會看到"立體聲混音"這個裝置跑出來
要注意,這個時候它是透明的,因為這時它預設是停用的,圖中可以看到狀態為"停用"
在"立體聲混音"上按右鍵,選啟用


啟用"立體聲混音"後,"立體聲混音"變成非透明的,狀態為"就緒"


此時,再去錄製桌面,錄音裝置選"立體聲混音"就應該有聲音了

但也有可能沒有聲音,我就是這個case
在google一番後,有人說是Realtek HD的driver有問題,要安裝官網的版本才會有聲音

是的,我在裝置管理員中去選Realtek HD這個device,並選"更新驅動程式",它一直跟我說,你的驅動程式已經是最新,無需更新

但是,在我到Realtek的官網去下載最新的驅動程式並安裝後,我的"立體聲混音"裝置就有聲音了
在Realtek的官網上,它似乎將所有驅動程式整合成一包,不再是根據晶片去分,只有根據OS去分
WinXP/2000一包
Win7一包
Win7的版本為:Vista_Win7_R252
而在裝完後,版本為6.0.1.6194

有圖有真相,圖中可以看到我的驅動程式版本為:6.0.1.6194


.

motoroal的藍芽晶片(CSR)搜尋藍芽裝置

.

我的Notebook為msi cr420,藍芽dongle為csr,driver為Motorola的
在要與Motorola的藍芽耳機H375連接時,遇上困難

最大的困難時,我不知道該怎麼搜尋藍芽裝置
Toshiba的話,會有輔助程式協助你搜尋藍芽裝置
而Motorola的話,雙擊藍芽裝置的圖案,只會出現MyBlueTooth
如圖


搜尋資料後發現,只要在MyBlueTooth中按F5,就會開始搜尋藍芽裝置………
在搜尋藍芽裝置時,工作列上的藍芽圖案會一明一暗

一明

一暗

.

在VirtualBox的windows guest os中和host os進行資料夾分享

.
紀錄一下在virtual box中,若guest os為windows,如何進行和host os資料夾分享

host os指的是你真的主機的os,也就是你virtual machine的宿主,在這個範例中,我的host os為windows xp

guest os指的是你安裝的virtual macine,在這個範例中,我的guest os也為windows xp

而現在,我想在host os和guest os兩者間進行資料的分享,要如何設定?

首先,在開啟virtual machine前,打開VirtualBox的設定,選擇左下的"共用資料夾"後,再選右上的加入


接著,在資料夾路徑中選其其他,選到你想要和guest os分享的資料夾
接著輸入欲分享的資料夾名稱
按下確定


設定完成後,如圖
以圖中來講,我將我的D:\vm\vmsf分享出來,分享的名稱為vmsf
記住分享名稱,在guest os中設定時會用到
設定完開啟virtual machine


進入virtual machine後,開啟檔案總管,在左邊我的電腦上按右鍵,選"連線網路磁碟機"


接著,設定網路磁碟機
磁碟機,選擇你欲分享的磁碟機代號,圖中我設定為R:
資料夾,輸入你要連線的對像名稱,格式為"\\vboxsvr\分享名稱"
我在guest os中設定分享名稱為vmsf,那麼我在這裡就要輸入:

\\vboxsvr\vmsf

如圖中的名稱為\\vboxsvr\music,那表示圖中的分享的資料夾名稱為music(其實是我抓錯圖)


連線成功後的樣子
可以看到我R槽有資料了
如此,virtual machine中的R槽就對應到host os的d:\vm\vmsf共享資料夾了




.