「nm」を使ってみましたか?オブジェクト/ライブラリ ファイル内の定義済みおよび未定義のシンボルのリストが表示されます (こちらのドキュメントを参照してください。
私が使用を検討しているBernd Striederによるこの投稿で言及されているアプローチがあります-
1. Use nm to generate a list of symbols in all object/library files involved.
2. This file is parsed and basically the (U)ndefined and (T)ext symbols
and the symbols of main functions are filtered out and mapped to their
object files. I found that U and T symbols suffice, which reduces the
overall problem considerably compared to the linker, which has to
consider all symbols.
3. The transitive hull of the dependency relation according to U and T
symbols between object files is being calculated.
4. A list of object files needed to resolve all dependencies can be
printed for any object file.
5. For any main object file, a make target to link it is arranged.