Crystal C绑定,简单的hello world示例。

时间:2017-03-13 21:24:29

标签: crystal-lang static-binding

我正在试图弄清楚水晶中的c绑定是如何工作的。对于初学者,我想知道如何在水晶中加入一个简单的hello world c函数。总是很好从基础知识开始吧?这是我想要包括的功能:

client@example.com

1 个答案:

答案 0 :(得分:10)

这也让我有点想弄清楚。首先,您必须将C文件编译为对象。在gcc中,您将运行gcc -c hello.c -o hello.o

然后在水晶文件中,您需要链接到C对象。这是一个例子:

#hello.cr
@[Link(ldflags: "#{__DIR__}/hello.o")]

lib Say 
  fun hello(name : LibC::Char*) : Void
end

Say.hello("your name")

现在你只需要编译你的水晶应用程序就可以了。 crystal build hello.cr