c++ - 任何将 Clang 作为脚本解释器嵌入 C++ 代码的教程?

标签 c++ jit llvm clang embedded-language

我还没有使用 llvm 或 clang 的经验。从我读到的clang据说很容易嵌入Wikipedia-Clang ,但是,我没有找到任何关于如何实现这一点的教程。那么是否可以通过 JIT 在运行时编译和执行用户定义的代码来为 c++ 应用程序的用户提供脚本功能?是否可以调用应用程序自己的类和方法并共享对象?

编辑:对于脚本语言(甚至 C++ 本身),我更喜欢类似 C 的语法

最佳答案

我不知道任何教程,但 Clang 源代码中有一个示例 C 解释器可能会有所帮助。你可以在这里找到它:http://llvm.org/viewvc/llvm-project/cfe/trunk/examples/clang-interpreter/

如果您走这条路,您的脚本语言的语法可能不会有太多选择。 Clang 只解析 C、C++ 和 Objective C。如果你想要任何变化,你可能会为你完成你的工作。

关于c++ - 任何将 Clang 作为脚本解释器嵌入 C++ 代码的教程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3224485/

相关文章:

c++ - QT 创建我的表单对象,如何访问该表单?

java - JVM JIT 编译器如何优化 "duplicated"Java 代码?

java - 从理论上讲,我可以获得 openJDK JIT,并将我的 java 代码编译为 native 代码吗?

c++ - 什么会使 C++ RTTI 不受欢迎?

c++ - 如何根据编译器指令 -D 自动选择 include.h 文件?

c++ - 对可变参数模板函数的调用不明确

c++ - boost 将 unordered_map 保存到磁盘的能力

angular - 为什么 Angular 2 有模板的 JiT 编译?

llvm - 使用 LLVM 工具反汇编原始 AArch64 二进制文件

assembly - LLVM 解释器在哪里寻找外部函数(库?)