d,ldc构建共享库
module dimedll;
export void testFunc() { // 仅用`-fvisibility=hidden`编译时,需要export
import std.stdio;
writeln("This is from dll");
}
用ldc2 -shared dimedll.d生成lib/dll.
import dimedll : testFunc;
pragma(lib, "dimedll");
void main() {
import std.stdio;
writeln("构建ime");
testFunc();
}
用ldc2 -link-defaultlib-shared dime.d生成带dimedll.dll的exe
Posix中区别是,不是用pragma(lib),你要用-L-ldimedll链接至libdimedll.{so,dylib}.
浙公网安备 33010602011771号