我正在构建一个编译器和一个虚拟机来执行我的字节代码.该语言允许绑定外部C函数,这些函数可以在某些外部共享对象中定义,也可以在主编译器/ VM二进制文件(一些基本语言内置函数)中定义.
我知道我可以使用dlopen(NULL,...)动态绑定主可执行文件中的符号,但是在我运行strip二进制文件之后不能.那么我有以下问题:
strip -d而是使用仅剥离调试符号.
该dlopen(3)手册页说:
Run Code Online (Sandbox Code Playgroud)CONFORMING TO POSIX.1-2001 describes dlclose(), dlerror(), dlopen(), and dlsym().
因此,*nix非常便携.
Windows使用LoadLibrary()而GetProcAddress()不是.
没有.