ScanCode是一个用来扫描开源项目copyright和license的工具,避免因为license问题导致的开源污染等问题。
具体的使用步骤如下,我的开发环境是Mac电脑
步骤1:下载ScanCode,ScanCode也是开源的,可以直接到GitHub上下载,项目地址如下/nexB/scancode-toolkit
下载完成之后cd到scancode目录下执行./scancode -h
首次执行的时候会去初始化一些配置
步骤2:尝试执行一下Sample的扫描,输入命令./scancode --html samples.html samples
Sample的扫描会很快完成,在根目录生成一个samples.html的报告文件
步骤3:扫描开源工程代码的copyright和license,输入./scancode --license --copyright --html resultsrc.html 扫描目录
前两个参数是要扫描的类型,第三个参数是生成文件的格式,第四个参数是最终的保存文件
我扫描的是Google的breakpad
扫描最终结果如下:
可以看到berakpad的license是BSD协议。
当然扫描也会有误报的地方,个别文件可能会提示使用的GPL协议,你去对应文件的起始行确认一下就行,到底是不是使用了GPL协议