从MySQL网站here上的页面看到以下段落:
您可以使用C或C ++(或其他可以使用C语言的语言)编写插件 呼叫惯例)。插件是动态加载和卸载的,所以 您的操作系统必须支持动态加载,您必须拥有 动态编译调用应用程序(非静态编译)。对于 服务器插件,这意味着必须编译 mysqld 动态
动态编译是什么意思?我知道动态链接,但我不确定它们对动态编译的意义。
此外,在Windows 10(x64)上,我如何确保已动态编译exe?是否有可能从dumpbin的输出中找出来?这是mysqld.exe(版本5.7)的dumpbin输出:
注意:我查看了this old question,但没有向我提供这么多信息。它建议的依赖工具不再在Windows上。
答案 0 :(得分:2)
动态编译意味着您正在编译代码,以使编译后的输出适合动态链接。
在Windows上,创建DLL的过程必然会编译它,使其适合动态链接,因为DLL总是动态链接。
我相信今天的大多数平台总是动态编译并生成可重定位的输出,即使它们随后是静态链接的。