本文主要是介绍cscope索引软链接解决方法(十六),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.cscope索引软链接解决方法
1.卸载cscope
# dpkg --list
# sudo apt-get remove cscope2.编译安装cscope
<1>.
下载地址:http://sourceforge.net/projects/cscope/files/cscopecscope官网:
http://cscope.sourceforge.net<2>.解压后修改:cscope-15.9/src/dir.c
static BOOL accessible_file(char *file)
{ 把: if(lstat(file, &stats) == 0 && S_ISREG(stats.st_mode))修改为: if (stat(file, &stats) == 0 && S_ISREG(stats.st_mode))
}
原因如下: man stat
stat() stats the file pointed to by path and fills in buf.
lstat() is identical to stat(), except that if path is a symbolic link, then the link itself is stat-ed, not the file that it refers to.<3>.编译安装
# cd cscope-15.9
# ./configure
# make -j4
# sudo make install
Or
# make install DESTDIR=/path# sudo cp cscope-15.9/src /usr/local/bin
# sudo cp cscope-15.9/contrib/xcscope/cscope-indexer /usr/local/bin3.测试
# find -L . | grep -E '\.c$|\.h$|\.S$|\.cpp$|\.java$|\.lds$|\.ld*|\.chh$|\.cc$' > cscope.files
# cscope -Rbqk
cscope: cannot find file cent.c
cscope: no source files found
1.解决以上报错:
诸如以上找不到软连接的报错,虽然会得到解决,但是会造成别的问题。
2.修改后造成问题:
如果将软连接也索引了,会造成同一个api函数,会被索引两遍,所以感觉没必要做以上修改。
这篇关于cscope索引软链接解决方法(十六)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!