精华内容
下载资源
问答
  • Linux内核源码阅读以及工具(转)

    万次阅读 2018-09-21 01:04:33
    Linux内核源码阅读以及工具(转) 转载地址:Linux内核源码阅读以及工具(转)

    Linux内核源码阅读以及工具(转)

    转载地址:Linux内核源码阅读以及工具(转)

    展开全文
  • 详细解释了linux源代码阅读工具vim + ctag + cscope的配置和使用方法以及 vimre的配置 适合linux开发人员必须掌握的一把利器 不然在浩如烟海的linux代码阅读linux内核简直大海捞针 痴人说梦
  • linux下,代码阅读工具,understand

    千次阅读 2018-03-02 15:51:07
    https://scitools.com/download/archive/安装指南http://www.xuebuyuan.com/1489041.html官方Linux版本安装指南Installation InstructionsUncompress and extract the contents of the installation file....

    https://scitools.com/download/archive/

    安装指南

    http://www.xuebuyuan.com/1489041.html

    官方Linux版本安装指南

    Installation Instructions

    Uncompress and extract the contents of the installation file. For example:

        % tar -xvzf Understand-4.0.800-Linux-64bit.tgz

    This will extract Understand. The executable is located in the bin directory.

      % cd scitools/bin/linux64
      % ./understand
    

    Add to PATH

    The PATH variable should be updated for each user, either in asystem-specific location or individually by each user. Add the appropriate bin directory to the path e.g.:

      % export PATH=$PATH:/home/myname/scitools/bin/linux64

    Add STIHOME variable for C API use

    If you're planning on using the C API, add the STIHOME variable to your environment as well. It should point to thedirectory where Understand is installed. e.g:

      % export STIHOME=/home/myname/scitools
    

    Desktop Shortcut

    The easist way to create a desktop shortcut to Understand is via a .desktop file saved to ~/.local/share/applications. For example:

    understand.desktop

    [Desktop Entry]
    Name=Understand
    Exec=/home/myname/scitools/bin/linux64/understand
    Icon=/home/myname/scitools/bin/linux64/understand_64.png
    Type=Application
    Terminal=false
    Comment=Analyze it, measure it, visualize it, maintain it - Understand it
    GenericName=Static analysis tool
    Categories=Development;IDE;
    

    对于Ubuntu 12.04 32bit版本,要为特定程序或命令创建桌面快捷方式,你可以使用任意文本编辑器创建一个.desktop文件,然后把它放到/usr/share/applications


    09E58CD1FB79

    增加全局变量的方法

    /etc/profile文件中添加变量【对所有用户生效(永久的)】

    VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”

    展开全文
  • linux代码阅读工具(转载)

    万次阅读 2008-03-29 23:34:00
    导读: Windows下的源码阅读工具Souce Insight凭 借着其易用性和多种编程语言的支持,无疑是这个领域的“带头大哥”。Linux/UNIX环境下呢?似乎仍然是处于百花齐放,各有千秋的春秋战国时代,实 际上,似乎其环境下...

    导读:
      Windows下的源码阅读工具Souce Insight凭 借着其易用性和多种编程语言的支持,无疑是这个领域的“带头大哥”。Linux/UNIX环境下呢?似乎仍然是处于百花齐放,各有千秋的春秋战国时代,实 际上,似乎其环境下的任何软件都是处于一种逐鹿中原的态势,也许这就是“集市”之于“大教堂”的优势所在吧!主要的交叉索引工具有:ctags、cscope、global、lxr等。下面将就各软件的优劣作一简单介绍,但无意再次引起此类工具之争,萝卜白菜,你仍可选择你之所爱,所以本文仅供参考!:)
      ctags
      ctags应该是几个里面最古老的一个了,当然也是获得支持最多的一个,vim默认就支持ctags产生的tag数据库,不过原来的ctags名符其实, 只支持C语言,且分析不够细腻。其新版本名为exuberant ctags,但是它已经远远超出了它名字的范畴,支持包括C语言在内的33种编程语言,准确度上也不错,并且它的开发仍在如火如荼地进行着,前途无量啊!
      配合vim使用,基本上能满足用户的要求。
      常用命令:
      建立数据库命令:
      exuberant-ctags
      在vim编辑器中浏览:
      :ta x
      跳转到符号x的定义处,如果有多个符号,直接跳转到第一处
      :ts x
      列出符号x的定义
      :tj x
      可以看做上面两个命令的合并,如果只找到一个符号定义,那么直接跳转到符号定义处,如果有多个,则让用户自行选择。
      Ctrl+]
      跳转到当前光标下符号的定义处,和ta类似。
      Ctrl+t
      跳转到上一个符号定义处,和上面的配合基本上就能自由跳转了。
      另外两个:tn, :tp是在符号的多个定义之间跳转
      美中不足,只能查找符号的定义!
      Cscope
      相比ctags的只能查找符号的定义,cscope则显得更加丰富,虽然他支持C语言,但是它除了能查找函数的定义,还能查找函数在哪里被调用过等,所以能在一定程度上弥补ctags的不足。
      常用命令:
      建立数据库的命令:
      cscope
      和vim配合使用:
      不再重复vim文档了,自己通过命令
      :help cscope
      去详细学习吧。
      比较遗憾的是,cscope的最后一次更新是在2003年,这个项目似乎也是被人抛弃了,希望以后能被人收养,或者和其它项目合并。
      Global
      Global是GNU出品的交叉索引工具,支持C, C++, Yacc, Java 和PHP4五种语言,命令行下表现不错,但是和vim配合使用,就不如前面两个更加亲切了。其特色在于分析得很细腻,还能生成交叉索引的web页,很适合用来做程序的文档。
      LXR
      Lxr是专门用来生成程序源码的交叉索引的web界面的工具,相比Global似乎更加专一,专业。著名的网上linux源码阅读站点http://lxr.linux.no/就是用它生成的,所以品质可略见一斑。
      KScope
      KScope是cscope的图形前端,他为那些不熟悉vim或者是不习惯终端作业的人提供了图形界面的选择,界面和source insight有些相近,从windows转过来做Linux开发的人可能感觉比较亲切。另外,它还有个比较迷人的特点:能生成函数调用树。
      个人建议
      vim+ctags,如果是C语言,用cscope作为补充,大型项目,也可再次让global介入。

    本文转自
    http://hi.baidu.com/smashell/blog/item/0457933f0adc90c17c1e714f.html

    展开全文
  • 在windows下总是有很多源代码统计工具, 比如SourceCounter(源代码统计精灵)等工具之前我总是使用如下命令统计源代码的信息, 繁琐而可读性差find . -type f -name "*.[hc]" | xargs cat | wc -l或者 find . -name "*....
    CSDNGitHub
    Linux下源代码行数统计工具(sloccount, cloc等)AderXCoding/system/tools/sourcecount


    知识共享许可协议本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可

    在windows下总是有很多源代码统计工具, 比如SourceCounter(源代码统计精灵)等工具

    之前我总是使用如下命令统计源代码的信息, 繁琐而可读性差

    find . -type f -name "*.[hc]" | xargs cat | wc -l

    或者

     find . -name "*.[hc]" | xargs -L 1 wc -l | awk '{print $1}' | while read num; do total=$((total+num)); echo $total; done

    1 sloccount源代码行数统计工具


    sloccount=Count Source Lines Of Code

    官网 : http://www.dwheeler.com/sloccount/

    1.1 Ubuntu安装


    sudo apt-get install sloccount

    1.2 使用


    sloccount  [--version]  [--cached]  [--append]  [  --datadir directory ]
           [--follow]  [--duplicates]  [--crossdups]  [--autogen]  [--multiproject]
           [--filecount] [--wide] [--details] [ --effort F E ] [ --schedule F E ] [
           --personcost cost ] [ --overhead overhead ] [  --addlang  language  ]  [
           --addlangall ] [--] directories
    --cached

    跳过计算过程,直接使用上次结果

    参数描述
    –multiproject如果该文件夹包括一系列的子文件夹,而它们中的每一个都是相对独立开发的不同的项目,那么使用”–multiproject”选项,评估将会正确的考虑到这一点
    –filecount显示文件数目而非代码行数
    –details显示每个源文件的详细信息
    –duplicates算上所有重复的(默认情况下如果文件有相同的内容,则只算一个)
    –crossdups如果顶目录包含几个不同的项目,并且你想把不同的项目下重复的文件在每个项目中都算上一次,则使用该选项

    1.3 转换成html文件


    有一个sloc2html.py可以把生成的结果转换为带图形统计结果的html文件. 缺点是对中文支持不好

    例如:

    sloccount --wide --multiproject SourceDirectory > result.txt
    sloc2html.py result.txt > result.html

    再打开result.html即可看到结果形如:

    result.html示例

    下载地址 http://www.dwheeler.com/sloccount/sloc2html.py.txt

    输出样例 http://www.dwheeler.com/sloccount/sloc2html-example.html

    wget http://www.dwheeler.com/sloccount/sloc2html.py.txt -O sloc2html.py

    sloc2html.py文件源代码如下

    #!/usr/bin/env python
    # Written by Rasmus Toftdahl Olesen <rto@pohldata.dk>
    # Modified slightly by David A. Wheeler
    # Released under the GNU General Public License v. 2 or higher
    from string import *
    import sys
    
    NAME = "sloc2html"
    VERSION = "0.0.2"
    
    if len(sys.argv) != 2:
        print "Usage:"
        print "\t" + sys.argv[0] + " <sloc output file>"
        print "\nThe output of sloccount should be with --wide and --multiproject formatting"
        sys.exit()
    
    colors = { "python" : "blue",
               "ansic" : "yellow",
               "perl" : "purple",
               "cpp" : "green",
               "sh" : "red",
               "yacc" : "brown",
               "lex" : "silver"
               # Feel free to make more specific colors.
               "ruby" : "maroon",
               "cs" : "gray",
               "java" : "navy",
               "ada" : "olive",
               "lisp" : "fuchsia",
               "objc" : "purple",
               "fortran" : "purple",
               "cobol" : "purple",
               "pascal" : "purple",
               "asm" : "purple",
               "csh" : "purple",
               "tcl" : "purple",
               "exp" : "purple",
               "awk" : "purple",
               "sed" : "purple",
               "makefile" : "purple",
               "sql" : "purple",
               "php" : "purple",
               "modula3" : "purple",
               "ml" : "purple",
               "haskell" : "purple"
              }
    
    
    
    
    print "<html>"
    print "<head>"
    print "<title>Counted Source Lines of Code (SLOC)</title>"
    print "</head>"
    print "<body>"
    print "<h1>Counted Source Lines of Code</h1>"
    
    file = open ( sys.argv[1], "r" )
    
    print "<h2>Projects</h2>"
    line = ""
    while line != "SLOC\tDirectory\tSLOC-by-Language (Sorted)\n":
        line = file.readline()
    
    print "<table>"
    print "<tr><th>Lines</th><th>Project</th><th>Language distribution</th></tr>"
    line = file.readline()
    while line != "\n":
        num, project, langs = split ( line )
        print "<tr><td>" + num + "</td><td>" + project + "</td><td>"
        print "<table width=\"500\"><tr>"
        for lang in split ( langs, "," ):
            l, n = split ( lang, "=" )
            print "<td bgcolor=\"" + colors[l] + "\" width=\"" + str( float(n) / float(num) * 500 ) + "\">" + l + "=" + n + "&nbsp;(" + str(int(float(n) / float(num) * 100)) + "%)</td>"
        print "</tr></table>"
        print "</td></tr>"
        line = file.readline()
    print "</table>"
    
    print "<h2>Languages</h2>"
    while line != "Totals grouped by language (dominant language first):\n":
        line = file.readline()
    
    print "<table>"
    print "<tr><th>Language</th><th>Lines</th></tr>"
    line = file.readline()
    while line != "\n":
        lang, lines, per = split ( line )
        lang = lang[:-1]
        print "<tr><td bgcolor=\"" + colors[lang] + "\">" + lang + "</td><td>" + lines + " " + per + "</td></tr>"
        line = file.readline()
    print "</table>"
    
    print "<h2>Totals</h2>"
    while line == "\n":
        line = file.readline()
    
    print "<table>"
    print "<tr><td>Total Physical Lines of Code (SLOC):</td><td>" + strip(split(line,"=")[1]) + "</td></tr>"
    line = file.readline()
    print "<tr><td>Estimated development effort:</td><td>" + strip(split(line,"=")[1]) + " person-years (person-months)</td></tr>"
    line = file.readline()
    line = file.readline()
    print "<tr><td>Schedule estimate:</td><td>" + strip(split(line,"=")[1]) + " years (months)</td></tr>"
    line = file.readline()
    line = file.readline()
    print "<tr><td>Total estimated cost to develop:</td><td>" + strip(split(line,"=")[1]) + "</td></tr>"
    print "</table>"
    
    file.close()
    
    print "Please credit this data as \"generated using 'SLOCCount' by David A. Wheeler.\"\n"
    print "</body>"
    print "</html>"

    2 cloc代码行数统计工具


    cloc也可以用来统计源代码的行数, 其本质是一个perl的脚本

    安装

    sudo apt-get install cloc

    使用

    进入到需要统计的目录执行

    cloc .

    cloc统计源代码行数

    其本质是一个perl的脚本, 可以用

    file `which cloc`

    file <code>which cloc</code>

    可以使用

    cat `which cloc`

    查看其源代码的信息

    查看cloc源代码的信息

    展开全文
  • Linux阅读代码工具----understand

    千次阅读 2018-07-25 11:52:56
    下载官网: ...echo “export PATH=$PATH:/home/myname/scitools/bin/linux64” >> /etc/profile source /etc/profile license: https://blog.csdn.net/sunjunior/article/details/45437415  
  • linux代码分析工具Splint

    千次阅读 2015-05-14 10:47:36
    1. C代码静态分析工具 Its4 读取一个或多个 C/C++源程序,将每个源程序分割成函数标志流,然后检查生成的标志是否存在于漏洞数据库中,从而得到每个源程序的所有错误警告列表,并带有相关的描 述。其规则...
  • Linux内核源码在windows下的快速阅读查找,内核代码导入Source Insight3.5 。
  • Linux内核源码阅读以及工具详解

    千次阅读 2020-02-02 12:08:39
    这篇总结了如何利用source insight对Linux内核代码进行阅读和学习(资料来源于网络) 随着linux的逐步普及,现在有不少人对于Linux的安装及设置已经比较熟悉了。与Linux 的蓬勃发展相适应,想深入了解Linux的也...
  • linux 下好用的 git 代码查看工具

    千次阅读 2017-07-19 15:53:36
    这就需要 git 代码查看工具来对比两个分支中当时同时修改了什么,该怎么合并 以前项目有 redmine git 网站,现在发现 giggle 或 gitg 也很好用,特此记录 注:个人更推荐 giggle,因为 gitg 查看代码时并不能查找...
  • 深入浅出Linux工具与编程源代码

    热门讨论 2011-08-11 14:02:25
    上传部分为《深入浅出Linux工具与编程》书刊各章源代码。 本书系统地论述了Linux工具与编程的相关知识。本书内容可分为Linux知识的初级部分和高级部分两个部分。本书初级部分包括Linux操作系统介绍,Linux命令说明...
  • Linux下的代码格式工具详解 CSDN GitHub Aderstep–紫夜阑珊-青伶巷草 AderXCoding/system/tools/code_format 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处 1 ...
  • linux/ubuntu下的代码对比工具Meld Diff

    千次阅读 2019-01-10 17:04:24
    linux/ubuntu下的代码对比工具Meld Diff 做开发的都知道,一个项目多个版本,有的时候多了自己都昏,还有就是比对别人的代码的时候,眼睛看怕是要爆炸。 所以我们一般使用代码对比工具,也就是软件自动来对比文件...
  • linux 代码格式化工具 clang-format

    千次阅读 2019-08-16 10:05:54
    平时团队进行合作的时候需要注意代码的格式,虽然很难统一每个人的编码风格,但是通过工具能够很好的管理代码格式。这里介绍下clang-format,它是基于clang的一个命令行工具,能够自动化格式C/C++/Obj-C代码,支持...
  • linux内核阅读工具

    千次阅读 2010-04-06 12:07:00
    阅读代码是钻研技术的最佳手段,而Linux提供了一个庞大的源代码库,但是,由于缺乏良好的源代码阅读工具,使得阅读Linux代码尤其是内核源代码十分困难,在本文中,笔者向大家推荐一个优秀的源代码阅读工具,并...
  • Sourceinsight(以下简称SI)是良许使用过的最好用,最顺手,最强大的编辑器,没有之一!它几乎支持所有的语言,包括:C,C++,ASM,HTML...但是,作为Linux程序员,我们的代码一般放在Linux电脑里。Linux里也有一些...
  • Linux代码覆盖率工具:gcov

    千次阅读 2017-09-17 13:34:14
    Linux代码覆盖率工具:gcov 对于C/C++软件开发,常常需要通过代码覆盖率报告来了解测试用例的场景覆盖情况,对于测试用例未覆盖的代码分支流程,需要补充用例,以保证测试用例的全面性与完整性,不漏测任何一个...
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    不过目前大多数较新的Linux发行版本(包括红旗 Linux、中软Linux、Mandrake Linux等)都可以自动挂装文件系统,但Red Hat Linux除外。 umount 1.作用 umount命令的作用是卸载一个文件系统,它的使用权限是超级...
  • Linux C/C++ 学习路线

    万次阅读 多人点赞 2019-07-04 20:41:56
    一、秋招 Linux C/C++ offer 情况 ...Linux C/C++ 从零基础到大神的学习路线,自己的真实学习路线,干货很多,建议收藏,认真阅读。 在校期间,我一直走的都是 Linux C/C++ 学习路线,历经暑期实习、秋招决战、校...
  • Python开发企业级标准环境搭建

    千人学习 2019-12-29 10:08:08
    1、linux + windows环境下的软件安装 2、Python开发环境IDE工具的使用。 3、如何完整完全的卸载Python开发环境。 为什么需要掌握这些团队开发工具? 要想学好Python这门语言,选择一款好用顺手的开发工具是必不可少...
  • Linux内核源码阅读以及工具

    千次阅读 2016-03-28 16:16:09
    而要想深入了解Linux,就需要阅读和分析linux内核的源代码。  Linux的内核源代码可以从很多途径得到。一般来讲,在安装的linux系统下,/usr/src/linux目录下的东西就是内核源代码。另外还可以从互连网上下载,解压缩...
  • Linux内核源代码阅读工具介绍

    千次阅读 2014-11-21 13:10:39
    而要想深入了解Linux,就需要阅读和分析linux内核的源代码。    Linux 的内核源代码可以从很多途径得到。一般来讲,在安装的linux系统下,/usr/src/linux目录下的东西就是内核源代码。另外还可以从互连网上 下载...
  • linux c 提高代码质量的几个测试工具

    千次阅读 2016-02-29 20:37:54
    很多it公司对于软件开发都有严格的分工,这包括设计、测试、...因为这一段时间都是在linux上开发的,所以下面涉及到的工具基本上都是基于linux平台的。假设测试的文件名为test.c。 (1)测试代码覆盖率
  • Linux超文本交叉代码检索工具LXR(Linux Cross Reference),是由挪威奥斯陆大学数学系Arne Georg Gleditsch和Per Kristian Gjermshus编写的。这个工具实际上运行在Linux或者UNIX平台下,通过对源代码中的所有符号...
  • 本篇先介绍一下Linux下图形用户界面形式安装,北大CoBOT目前支持各种Linux下安装,包括CentOS、Ubuntu、Redhat等,也支持国内操作系统中标麒麟和银河麒麟的安装。 安装包放在指定位置,cd进入指定目录 解压CoBOT-...
  • Linux运维工程师学习成长路线

    万次阅读 多人点赞 2019-12-14 20:52:46
    作为互联网的幕后英雄,Linux运维工程师长期隐匿在大众认知范围之外,关于运维的讨论仍旧是一片无人涉足的荒漠。在某知名行业研究调查结果中,非互联网从业者对于运维相关问题的回复有三个高频词汇是:不知道、没听...
  • 几款优秀的Linux基准测试工具

    万次阅读 2017-01-09 23:26:33
    GitHub 几款优秀的Linux基准测试工具 AderXCoding/system/benchmark 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处, 谢谢. 1 性能基准测试工具基准测试是指运行...
  • 为什么不采用 Windows 下较为著名的源代码阅读软件 SourceInsight, 其一,其在 Linux 下的安装较为繁琐; 其二,切换代码时背景色的变化会为人的眼部产生极为不舒服的感觉; 其三,Linux 下自有自己的一套实用工具...
  • Linux统计代码行数

    千次阅读 2018-06-28 10:38:03
    在日常运维工作中,会碰到对一项项目下的代码行数进行统计的需求,下面对代码行数的统计方法进行梳理,以供参考。 1)最简单的是使用wc -l直接进行代码行数统计。(wc的几个参数的解释:-c 统计字节数;-l 统计行数...
  • Clion最好的一点就是他的代码静态分析能力,可以自动分析某些书写错误/类型错误,可以自动保存文件,可以ctrl跳转定义,可以一健编译,可以单步调试,这些在本文都会有所介绍。由于软件的跨平台特性,可以在各平台...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 578,788
精华内容 231,515
关键字:

linux代码阅读工具

linux 订阅