阅读内核代码习惯喜欢使用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阅读修改内核源代码了。
博主博客里的文章挺不错的,值得我经常过了看看,以后得常来呀!