LLVM C++ API を使用して Windows にスクリプト インタープリターを実装しようとしています。
myInput=<stdin>;
Cで同様の関数を使用してそれらをリンクしたくありません。したがって、STDINまたはLLVM APIを使用したより一般的なFILEハンドルにバインドまたはそのようなものを作成するにはどうすればよいですか?
LLVM インタープリターから外部関数を簡単に使用できます。 を参照してくださいlib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
。この場合、C ライブラリを使用してfgets
を読み取るstdin
か、スクリプトが直接呼び出すことができるより便利なラッパーを定義できます。LLVM インタープリターまたは JIT は、常に C ランタイムとリンクしているため、LLVM プロセス内でそのような関数を見つけることができるため、追加の DLL を開く必要がないことに注意してください。