8000 GitHub - rodrigobdz/ccscanner: A C/C++ dependency scanner
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

rodrigobdz/ccscanner

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Towards Understanding Third-party Library Dependency in C/C++ Ecosystem

Dataset

All extracted dependencies and ground truth are available at: https://figshare.com/s/9e2fd7a1389af8266bfe

Detection targets can be downloaded from official GitHub repositories or official websites.

CCScanner

CCScanner is a dependency scanner for C/C++ software. More details can be seen in our paper, Towards Understanding Third-party Library Dependency in C/C++ Ecosystem.

You can try to use it by running "scanner.py" or install the pip package "ccscanner".

Centris is available at: https://github.com/WOOSEUNGHOON/Centris-public.

results.json contains the extracted dependencies from "tests/test_data".

Install

CCScanner is written using Python3. Install dependencies.

pip install json5 bs4 GitPython lxml

Usage

run command:

cd ccscanner
python ccscanner/scanner.py -d $directory_to_scan -t $results_json_file

All results will be saved to a json files. The default path to save results is ./results.json.

Deps field in results is all extracted dependencies.

Pip package

We have released a pip package. You can try to use it.

pip install ccscanner
$ ccscanner_print -d ${directory to scan} -t ${file to save}

Test

tests directory contains some configuration files in real-world applications to test CCScanner.

CCScanner will be continuously maintained in future. It is welcomed if you have any issues or want to join us to improve it.

About

A C/C++ dependency scanner

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CMake 51.5%
  • Python 41.3%
  • Lua 5.0%
  • Meson 2.2%
0