我正在构建一个编译器和一个虚拟机来执行我的字节码。该语言允许绑定外部 C 函数,这些函数可以在一些外部共享对象中定义,以及主编译器/VM 二进制文件(一些基本语言内置)。
我知道我可以使用 dlopen(NULL, ...) 在主可执行文件中动态绑定符号,但是在我strip
在二进制文件上运行之后不能。那么我有以下问题:
- 有没有办法在剥离的二进制文件上做到这一点?
- 一般而言,此功能在 UNIX 系统中的可移植性如何?
- 是否有可能以某种方式在 Windows 上做同样的把戏?
- 在主可执行文件中动态绑定的任何替代方法?