用于dlang静态链接的过程

时间:2017-10-08 20:30:39

标签: compilation d static-linking

使用此文件:

void main() {
  import std.net.curl;
  download("http://example.com", "index.htm");
}

我可以用D编译:

dmd z.d

但是,这会依赖外部curl库创建共享构建。我怎么能够 创建静态构建?

1 个答案:

答案 0 :(得分:2)

首先需要静态卷曲库链接。 DMD for Windows仅提供curl的动态链接版本。维基有如何在Windows上构建静态卷曲库的说明:https://wiki.dlang.org/Curl_on_Windows。 对于Linux,您可以检查您的发行版是否提供curl的静态版本。否则你必须自己编译。

使用静态curl库,您只需在命令行上提供库的路径,例如:

dmd z.d C:\path\to\static\curl\lib

dmd z.d /path/to/static/curl/lib

您应始终使用dmd进行关联。如果需要为链接器提供其他标志,可以使用-L命令行开关。