簡體   English   中英

elixir中的函數未定義(混合測試)

[英]function is undefined in elixir (mix test)

我正在嘗試在Xubuntu 16.04上安裝IElixir Jupyter筆記本內核。 我之前在使用Xubuntu 16.04的另一台機器上成功完成了它。

我有最新的erlang otp 19.3和elixir 1.4.4(使用kiex安裝)。

執行mix test我得到一個關於undefined的錯誤:erlzmq_nif.context/1函數:

** (Mix) Could not start application ielixir: exited in: IElixir.start(:normal, [])
    ** (EXIT) an exception was raised:
        ** (UndefinedFunctionError) function :erlzmq_nif.context/1 is undefined (module :erlzmq_nif is not available)
            :erlzmq_nif.context(1)
            (ielixir) lib/ielixir.ex:13: IElixir.start/2
            (kernel) application_master.erl:273: :application_master.start_it_old/4

事情就是所有依賴項都已成功安裝,我可以在iex使用:erlzmq_nif.context/1

iex(1)> :erlzmq_nif.context 1
{:ok, ""}
iex(2)> 

我已將我的erlzmq構建復制到/usr/lib/erlang/lib以便我也可以在erlang中使用它:

1> erlzmq_nif:context(3).
{ok,<<>>}
2> 

使用mix時,為什么elix不能看到這個lib?

我沒有解決問題,我已經設法讓IElixir工作。

我所做的是替換:erlzmq在依賴mix.exsgithub: "zeromq/erlzmq" (注意不是2在回購名稱)可能不會跑贏大市erlzmq2因為它不是基於NIF,但至少它的工作原理沒有問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM