c++ - 与 LLVM 的动态链接

标签 c++ llvm dynamic-linking

我想在一个模块中执行函数,这个模块将在其他模块中解决依赖关系。模块可能会改变(动态编译环境),所以我不希望在单个单体模块中链接所有依赖项,也就是说,如果可以避免的话

我希望使用 Linker::linkModules 但这总是对源模块具有破坏性。这对于一个依赖于一个模块的模块来说是可以的,因为如果那个模块发生了变化,这没什么大不了的,但是重建和重新链接 N-1 个模块不是因为一个模块发生了变化而没有变化的过度吗?

我想知道是否有可以用于 JIT 执行的非破坏性版本的 linkModules。

最佳答案

试试这个:

Linker::LinkModules(destinationModule, sourceModule, Linker::PreserveSource, &error);

如果你传递的是Linker::PreserveSource而不是Linker::DestroySource,你可以在调用后继续使用sourceModule

关于c++ - 与 LLVM 的动态链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10884340/

相关文章:

PHP 链接到扩展中的共享库

c++ - 无法将C共享库链接到C++程序

llvm - 从函数 LLVM 返回 Void

c++ - 如何使用Clang CompilerInstance完成?

c++ - 为什么 visual studio 会创建 .LIB 和 .DLL?

Python 共享库

C++从带有&返回指向未初始化结构的指针的 vector 获取结构

c++ - 从 JPEG 图像中提取亮度的正确方法是什么( Gamma 校正等)?

c++ - 如何在不传入值的情况下遍历二叉树并统计某个值出现的次数

python - llvm 中的虚拟表 (llvm-py)