バイトコードを実行するためのコンパイラと仮想マシンを構築しています。この言語では、一部の外部共有オブジェクトで定義される可能性のある外部 C 関数と、メイン コンパイラ/VM バイナリ (いくつかの重要な言語組み込み) をバインドできます。
strip
メインの実行可能ファイル内のシンボルを dlopen(NULL, ...) で動的にバインドできることはわかっていますが、バイナリで実行した後ではできません。そこで次の質問があります。
- ストリップされたバイナリでこれを行う方法はありますか?
- 一般に、この機能は UNIX システム間でどの程度移植可能ですか?
- どういうわけかWindowsで同じトリックを行うことは可能ですか?
- メインの実行可能ファイル内で動的にバインドする代替方法はありますか?