Of course! dstatic.d: module dstatic; extern(C): int add(int x, int y) { return x + y; } Then compile with: dmd -lib dstatic.d driver.c: #include "stdio.h" int main() { printf("add(4, 5) = %d", add(4, 5)); } dmc driver.c dstatic.lib driver.exe > add(4, 5) = 9