グローバル(ROM & RAM)変数を定義していますが、どこでも自分のコードで使用したことはありません。 現在、私は緑の丘コンパイラで作業しています。未使用のグローバル変数を見つける機会はありますか?組み込みシステムで使用されていないグローバル変数
-1
A
答えて
0
通常、これは生成されたリンカマップファイルで確認できます。
私は見つけることができるa manualから引用したよう:(ページ207)
マップファイルの生成
は、マップファイルの生成を制御します。
•デフォルトマップファイル(-map)の生成 - [デフォルト]
オブジェクトファイル名に.map拡張子を加えたマップファイルを作成します。
ユーザー指定のマップファイルを生成する(-map = filename) -
指定されたファイル名でマップファイルを作成します。
•抑止マップ(-nomap)
あなたは、あなたのプロジェクトに追加の引数を使用してこれらのオプションを養うことができ、そしてそれはあなたのファームウェアの位置や大きさについて知っているがあり、すべてを報告したファイルを作成します。
ファイルは出力ディレクトリの "読み取り可能な"テキストで、.map
の拡張子が付きます。 削除シンボルまたは未使用シンボルを検索できます。
マップファイルを作成するのがデフォルト動作であることに注意してください。
多くの場合、リンカーで利用できる便利な機能の1つは、callgraphの作成です。どの機能が互いに依存しているかを簡単に見ることができます。さらに重要なのは、最悪のケースである予測可能なのスタック使用状況を関数ごとにレポートします。
通常、割り込みによるスタックの使用は予測しません。
関連する問題
- 1. 組み込み関数が組み込まれていない並べ替え
- 2. システム組み込み関数のエラー
- 3. 組み込みシステムのグラフィカルインタフェース
- 4. 組み込みシステムのmalloc
- 5. 組み込みシステムのポッドキャスト
- 6. 組み込みシステムのgettext?
- 7. 組み込みプログラミングでのグローバル変数の回避
- 8. 組み込みシステム用のコンストラクタ
- 9. 組み込みシステム(Cコード)で使用されるtdfファイルは何ですか?
- 10. オペレーティングシステムのない組み込みシステムでのmalloc
- 11. 組み込みシステムでopencvを使用する方法
- 12. 組み込みシステムでLexトークナイザを使用する
- 13. 組み込みシステムでのELFファイルの使用?
- 14. Python:組み込み関数を使用しないバイナリ・カウント
- 15. 組み込みシステムでのコード実行
- 16. 組み込みシステムでのエントロピー生成
- 17. 組み込みシステム用リアルタイムオペレーティングシステム - >良いスタートブック
- 18. 組み込みシステムにUMLを使用する理由
- 19. 組込みシステム設計:パーティショニングリソース
- 20. 組み込み用のC/C++組み込み関数VMOVD
- 21. は組み込みの認証システム
- 22. 組み込みシステムにおけるマルチスレッド
- 23. 組み込みシステム向けデータベース
- 24. ベアボード上のC++組み込みシステム
- 25. `システムに関数定義を組み込んでいます。
- 26. グローバルがDjangoに組み込まれています
- 27. 組み込み配列の参照変数でカウント変数を使用できない
- 28. 組み込みのUnixシステムですべてのフラッシュメモリを使用する方法
- 29. 組み込みシステムでUSB OTGをシリアルポートとして使用するには?
- 30. web.pyのテンプレートに組み込み「STR」関数を使用する:グローバル名
定数として宣言されている場合を除き、それらは.textまたは.rodataになります。バイナリを調べましたか? –
リンカによって生成された.mapファイルは、グローバル変数のアドレスを特定する必要があります。ただし、使用されていない変数や関数はリンカーによって実行可能ファイルから削除されることがあります。 – kkrambo