Cling は、学習目的で大規模なライブラリの API をいじるのに最適な方法のように思えます。残念ながら、これを開始する方法についてのドキュメントやチュートリアルはありません。不足しているシンボルに遭遇し続け、あきらめるまで、ソースに対して C++filt と rgrep を何度も使用して、ロードするライブラリまたはヘッダーを見つけなければなりませんでした。
ソースからライブラリ全体を JIT するのは正しい戦略ですか、それともビルド済みのライブラリにリンクする必要がありますか?
Cling は、学習目的で大規模なライブラリの API をいじるのに最適な方法のように思えます。残念ながら、これを開始する方法についてのドキュメントやチュートリアルはありません。不足しているシンボルに遭遇し続け、あきらめるまで、ソースに対して C++filt と rgrep を何度も使用して、ロードするライブラリまたはヘッダーを見つけなければなりませんでした。
ソースからライブラリ全体を JIT するのは正しい戦略ですか、それともビルド済みのライブラリにリンクする必要がありますか?
ヘッダーとライブラリ間のリンクを作成する 1 つの方法は、オートローディング マップを生成することです ( http://cling.web.cern.ch/cling/doxygen/classcling_1_1Interpreter.html#ad56b40974d204f85e9fc0a9fa9af1660 )。ビルド時に生成し、静的初期化中にライブラリにフックを追加できます。したがって、ユーザーは次のようにします: .L myLib これにより、ヘッダー インクルードがトリガーされます。もう一方の方法は、もう少しトリッキーです。https://github.com/vgvassilev/cling/tree/master/test/Autoloadingをご覧ください
お役に立てば幸いです。