Erlang C-Node erl_errno符号未找到错误

时间:2017-06-15 20:04:37

标签: erlang cnode

我尝试使用erl_errno,如erlang文档中所述:http://erlang.org/doc/man/erl_error.html#

但是,我在链接过程中遇到了一个未找到符号的问题。我在Mac上运行,这是程序链接的方式:

g++ -L/usr/local/lib/erlang/lib/erl_interface-3.9.3/lib -o "roserl" ./src/driver.o ./src/erl_bridge.o -lei -lm -lerl_interface

我已经与libei和liberl_interface建立了联系。还需要什么?

1 个答案:

答案 0 :(得分:0)

这很奇怪,但您必须在标题中执行此操作:

#ifndef _REENTRANT
#define _REENTRANT /* For some reason __erl_errno is undefined unless _REENTRANT is defined */
#endif

#include "erl_interface.h"
#include "ei.h"

这解决了我的问题。现在我可以使用erl_errno