閱讀核心代碼習慣和喜歡使用source insight。如果能在source insight上修改核心代碼,同時又不需要把修改的核心代碼再拷貝到虛擬ubuntu上去那就方便了。於是想通過用samba與xp共用的方式來實現。即xp、samba、虛擬ubuntu9.10等工具。
事實上是可以的,用source insight把在samba上共用的核心源檔案建立了工程,速度上不是特別慢,可以接受。但在Source insight上修改通過samba共用ubuntu上核心來源程式檔案出現了"Confirm by typing ‘yes' below"、"has been changed outside of the editor. Do you want to reload the file?"、“There was an error saving ....”和”An invalid Source Insight serial number was detected”等一些問題,如所示:
通過在網上搜尋,,找到了問題原因及其解決方案。
出現上述問題的原因是source insight本身的問題,具體引用網上說明:
問題描述:我的電腦安裝了Windows xp,又在虛擬機器裡裝了個Ubuntu9.04.代碼都放在Ubuntu中,並通過samba與windows共用,而後用source insight開啟。但問題在於:每次在 source insight裡面做修改,而後切換到另一個檔案的時後都會出現 “... has been changed outside of the editor. Do you want to reload the file?"
該問題在Fedora11上也會出現,但Redhat9不會。
解決辦法:懷疑了很多地方,如Ubuntu的同步、samba的同步等,但最後在sourceinsight3.50.0051的更新日誌中找到如下更新日誌:
Fix: Sometimes files were said to be modified outside of SI, but they were not. This most likely happened on network drives. Under some conditions, the Windows directory information can lag for remote drives. SI now uses a better method of getting file information.
至此,問題明朗,將source insight升級到最新版本。問題解決。
既然是source insight版本的問題,就下載了新的版本,我下的是sourceinsight3.50.0065
但在安裝的時候又出現了問題,出現了“An invalid Source Insight serial number was detected”,但根據提示重新安裝也不能輸入註冊碼,在網上找到解決方案,如下:
Source Insight3.5升級遺留問題: an invalid source insight serial number was detected解決方案
2010-08-20 20:07
Source Insight最新版 3.50.0064安裝時,出現an invalid source insight serial number was detected,
無論怎麼卸載,還是用清理軟體在卸載以後來清除,都沒有辦法刪除掉遺留註冊表中的sn。
請注意,註冊表裡頭有個鍵,
/HKEY_CURRENT_USER/Software/Source Dynamics/Source Insight/3.0,
HKEY_LOCAL_MACHINE/Software/Source Dynamics/Source Insight/3.0。
卸載後,把紅色的部分刪除。好了,用別的清理軟體清理下系統垃圾。再安裝。
是不是可以了呢?重新輸入註冊碼。 ^_^
根據上述方法可以重新輸入註冊碼了,在這裡提供幾個註冊碼:
SI3US-205035-36448
SI3US-466908-65897
SI3US-368932-59383
SI3US-065458-30661
SI3US-759512-70207
經過一翻折騰後,終於這些問題解決,可以正常使用source insight閱讀修改核心原始碼了。