Erlang 응용 프로그램에서 외부 라이브러리 (erlzmq2)를 사용하고 싶습니다. 나는 erlang에 초보자이며 그것을 포장하거나 컴파일하는 법을 모른다. 현재 rebar.config 파일 편집을 기반으로하는 대답이 나에게 더 유용 할 경우 편집을 위해 철근을 사용하고 있습니다. 당신을위한 다행히erlang 응용 프로그램에서 외부 라이브러리 사용
0
A
답변
5
, 당신의 라이브러리가 자사의 repo의 루트에 rebar.config
가지고 있기 때문에, 철근 포장 된 것으로 나타납니다 : 그냥이 추가 것, https://github.com/zeromq/erlzmq2
는 종속성이 아직 구성되지가 가정하여 rebar.config
자신의 :
{deps, [
{erlzmq2, "2.*", {git, "git://github.com/zeromq/erlzmq2", {tag, "2.1.11"}}}
]}.
. 당신은 또한 단지 머리에 일할 수 : 그 x.app 파일 (erlzmq2.app.src line 1)
{deps, [
{erlzmq2, "3.*", {git, "git://github.com/zeromq/erlzmq2"}}
]}.
는 "deps"항목의 형식은 응용 프로그램의
- 이름입니다 정규식은 x.app 파일에서 "vsn"과 일치합니다 (erlzmq2.app.src, line 4). 이 온 전성 체크를 무시하려면 ". *"를 사용할 수 있습니다.
- 종속성을 가져올 수있는 위치를 제공하는 튜플.
git
의 경우 URL에branch
또는tag
튜플을 지정할 수 있습니다.
철근 및 Reltool 사용하여 응용 프로그램은 완전히 새로운 질문, 내가 생각하는, 그에서 복잡한 하나는 최대 포장. 그러나 응용 프로그램이 매우 작거나 일회성/비공식적 인 경우 Rebar의 "escriptize"명령을 사용해보십시오.
응용 프로그램이 "foo"인 경우 main/1
인 src에 foo.erl
이 필요합니다. 그런 다음 rebar.config
에 추가 :
{escript_incl_apps, [erlzmq2]}.
및 명령 줄에서 (담당자를 받고 컴파일 후)
가 실행철근 escriptize
철근이 물건 모든 바이너리와의 그 실행 파일로 실행되는 단일 파일에 "encrypt_incl_apps".
0
libpath라는 별도의 폴더를 만들고 lib 경로와 ERL_LIBS를 내보낼 수 있습니다. 라이브러리가 충분하다면 OTP lib 디렉토리에 같은 것을 넣을 수 있습니다. 그러나 권장하지 않습니다!
관련 문제
- 1. Windows 응용 프로그램에서 라이브러리 사용
- 2. Android 응용 프로그램 개발시 외부 라이브러리 사용
- 3. PHP 응용 프로그램에서 Ruby 라이브러리 사용
- 4. 스윙 응용 프로그램에서 Highcharts 라이브러리 사용
- 5. .NET 웹 응용 프로그램에서 C 라이브러리 사용
- 6. osgi 응용 프로그램에서 osgi가 아닌 라이브러리 사용
- 7. 응용 프로그램에서 WCF 클래스 라이브러리 사용
- 8. 자바 응용 프로그램에서 삼투 라이브러리 사용
- 9. 안드로이드 응용 프로그램에서 JAR (라이브러리) 사용
- 10. C++ 응용 프로그램에서 lzo 라이브러리 사용
- 11. 상업용 Java 응용 프로그램에서 LGPL 라이브러리 사용
- 12. WPF 응용 프로그램에서 WinRT 라이브러리 사용.
- 13. Niarogen의 Riak의 Erlang 클라이언트 라이브러리 사용
- 14. WindowsPhone 7 응용 프로그램에서 외부 ResourceDictionary 사용
- 15. 응용 프로그램에서 외부 sqlite 데이터베이스 사용
- 16. Liferay : 외부 응용 프로그램에서 구성된 역할 사용
- 17. REDHAWK에서 외부 라이브러리 사용
- 18. 외부 라이브러리 사용
- 19. Ruby에서 외부 라이브러리 사용
- 20. 외부 라이브러리 사용
- 21. Erlang SIP 클라이언트 라이브러리
- 22. 외부 응용 프로그램에서 로깅
- 23. Erlang 응용 프로그램에서 환경 변수 설정
- 24. Erlang/OTP 응용 프로그램에서 gen_server를 사용해야하는 경우
- 25. Pydev/Eclipse의 Python 프로그램에서 외부 C 라이브러리 사용
- 26. 안드로이드 응용 프로그램에서 외부 라이브러리 프로젝트를 호출하는 방법
- 27. erlang AMQP 클라이언트 라이브러리
- 28. Erlang 용 OAuth2 라이브러리
- 29. Erlang 직렬화 라이브러리
- 30. Xamarin Android에서 외부 라이브러리 사용.
라이브러리가 로컬 파일 시스템에있을 때 세 번째 필드 (튜플)은 무엇이 될까요?/lib /입니다. 외부 라이브러리를 설치하는 이상적인 위치 ?? –
로컬 수정을 했습니까? 디스크 공간이 1k 개인 소중한 시스템에 있습니까? 네트워크에 액세스 할 수없는 시스템에 있습니까? 이러한 경우가 아니면 원격 라이브러리를 참조하는 표준 Rebar 실습을 사용하는 것이 좋습니다. –
좋습니다. 나는 표준 참조 관행을 사용합니다. 내 응용 프로그램과 함께 erlzmq를 성공적으로 빌드 할 수 있습니다. 그러나 "Context = erlzmq : context()"와 같은 코드에서 참조 할 때 '모듈을로드 할 수 없습니다'라는 불만으로 종료됩니다.나는 그것이 어떤 연계 문제라고 생각한다. 어떻게하면 이것을 제대로 수행 할 수 있을지 모른다. –