我是D编程语言的新手,有一个非常简单的问题。
我想编译一个D脚本库,然后在我的其他D项目中使用它。
在C中我链接到.lib文件并为它们创建了标题,但在D中我找不到那样的东西(在D中是否还有某种标题?)
我使用D-IDE作为我的IDE,使用DMD2作为我的编译器。
答案 0 :(得分:11)
创建StaticLib.d:
module StaticLib;
int func(int x)
{
return x+1;
}
编译:
dmd -lib StaticLib.d -ofStaticLib.lib
创建App.d:
module App;
import std.stdio;
import StaticLib;
void main(string[] args)
{
writeln("func(3) = ", StaticLib.func(3));
}
创建StaticLib.di(d标题):
int func(int x);
编译:
dmd App.d StaticLib.di StaticLib.lib -ofApp.exe
答案 1 :(得分:7)
有.di(D接口)文件可以用作头文件,这些文件可以使用-H编译器开关从源生成
然而,我见过的库只会导入要导入的源文件
您可以使用-I开关指定编译器查找导入的位置
并且-L开关将传递给链接器