2016-08-01 4 views
0

내 프로젝트에 lager_syslog을 사용하려고하는데 드라이버가 누락 된 것처럼 보입니다. 에서erlang lager_syslog 드라이버 오류

이것은 내 rebar.conf :

{deps, [ 
     ... 
     {lager_syslog, {git, "https://github.com/basho/lager_syslog.git", {branch, master}}} 
    ]}. 

내 테스트 핸들러 :

{lager_syslog_backend, ["test", local1, info]}, 

오류 :

19:29:09.981 [error] Lager failed to install handler {lager_syslog_backend,{"test",local1}} into lager_event, retrying later : {error, 
    {{shutdown, 
    {failed_to_start_child, 
     syslog, 
     "could not load driver syslog_drv: \"cannot open shared object file: No such file or directory\""}}, 
    {syslog_app, 
    start, 
    [normal, 
     []]}}} 

어떤 제안? 메일 링리스트

IIRC 내 질문에 대답 케네스 라킨

답변

1

덕분에, rebar3는 핵심 프로젝트를에 포장 보다는하는 rebar3 플러그인 밖으로 포트 컴파일러를 이동했다. 내가 본 것부터 rebar2 프로젝트는 포트 드라이버를로드하지 못합니다.

깨끗하고 프로젝트에 rebar.conf에

{overrides, 
    [{override, syslog, [ 
    {plugins, [pc]}, 
    {artifacts, ["priv/syslog_drv.so"]}, 
    {provider_hooks, [ 
     {post, 
     [ 
     {compile, {pc, compile}}, 
     {clean, {pc, clean}} 
     ] 
     }] 
    } 
    ]} 
]}. 

를 추가하고 다시 빌드합니다. (시스템 로그 파일 프로젝트 어디 lager_syslog의 포트 드라이버 삶이다.) 또한

참조 : https://github.com/blt/port_compiler#use-with-existing-dependency