github / github/codeql-cli-binaries

Some files missing after database creation

オープン
#14 コメント 12 件 リアクション 0 件 担当者 0 名 GitHub で見る
CLI
主要言語
言語のデータがありません
スター
1k
フォーク
184
PR マージ指標
30日以内にマージされた PR はありません

説明

While trying to create a database for the [fuchsia operating system](https://fuchsia.dev), it seems to leave out some of the files that were built.

Note that the steps to build fuchsia and a codeql database require ~200GB of disk space. I just want to get a better understanding of why it might be skipping some of the files.

----------

Steps to reproduce:

1. Follow steps on the fuchsia site to [download an build fuchsia](https://fuchsia.dev/fuchsia-src/getting_started)
1. Inside the fuchsia directory, run: `fx set workstation.x64 --with-base //bundles:kitchen_sink --no-goma `
1. Build the database: `codeql database create fuchsia-ql --language=cpp --source-root=${FUCHSIA_DIR} --command="./scripts/fx clean-build"`
1. List the files with a script similar to [this one](https://github.com/github/codeql-cli-binaries/issues/13#issue-554520733)
1. List all the fuchsia cc, ignoring the third_party files: `find ${FUCHSIA_DIR} -iname "*.cc" | grep -v "third_party"`
1. Compare the files in the database with the cc files. Some of the files are missing.

[This is the list](https://www.irccloud.com/pastebin/raw/6mk596gp) that I have in my system. In particular, files like `/zircon/tools/zbi/zbi.cc` should always be built.

To get a list of all the compiled files in fuchsia, run: `fx compdb` and then look at `out/default/compile_commands.json` and `out/default.zircon/compile_commands.json`

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

Issue に記載されている Fuchsia のビルド手順と `codeql database create` コマンドを使ってデータベースを再現します。データベースの内容を `out/default/compile_commands.json`、`out/default.zircon/compile_commands.json`、および `find` の結果と比較し、報告されている `/zircon/tools/zbi/zbi.cc` のケースを確認します。コンパイルされたファイルが除外される理由を特定し、抽出の動作を文書化または修正できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
cpp
領域
devtools
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
30/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。