Windows 7 (64 비트)에서 MinGW/MSYS를 사용하여 Erlang RabbitMQ 플러그인을 빌드하는 동안 위의 오류가 발생했습니다. Erlang v5.10.3 (32 비트)을 사용하고 있습니다. 내 시스템에서 RabbitMQ를 실행할 수 있습니다. http://pastebin.com/S739wfhB generate_deps의 전체 코드는 여기에서 찾을 수 있습니다 - - http://pastebin.com/N4HVz8z1얼랭 (Erlang) escript : 예외 오류 : 오른쪽 값의 일치 없음 {error, enoent}
시
[email protected] /d/RabbitMQ/build-source/rabbitmq-public-umbrella/presence-exchange-master
$ make
[elided] generate deps
escript: exception error: no match of right hand side value {error,enoent}
in function generate_deps__escript__1389__793192__493000:detect_deps/5 (d:/RabbitMQ/build-source/rabbitmq-public-umbrella/generate_deps, line 40)
in call from generate_deps__escript__1389__793192__493000:'-main/1-fun-0-'/6 (d:/RabbitMQ/build-source/rabbitmq-public-umbrella/generate_deps, line 19)
in call from lists:foldl/3 (lists.erl, line 1248)
in call from generate_deps__escript__1389__793192__493000:main/1 (d:/RabbitMQ/build-source/rabbitmq-public-umbrella/generate_deps, line 17)
in call from escript:run/2 (escript.erl, line 747)
in call from escript:start/1 (escript.erl, line 277)
in call from init:start_it/1 (init.erl, line 1054)
in call from init:start_em/1 (init.erl, line 1034)
나는 페이스트 빈에 전체 오류를 게시했습니다. 나는 또한 Cygwin에서 사용하여 시도했지만 그것은 또 다른 오류를 반환 - escript을 : 파일을 열지 못했습니다 :/홈/후지쯔/rabbitmq/빌드 소스/rabbitmq - 공공 우산/generate_deps
EDIT 1
CYGWIN은 다음을 반환합니다.
$ make
[elided] generate deps
escript: Failed to open file: /cygdrive/d/RabbitMQ/build-source/rabbitmq-public-umbrella/generate_deps
[elided] generate deps
escript: Failed to open file: /cygdrive/d/RabbitMQ/build-source/rabbitmq-public-umbrella/generate_deps
make: *** No rule to make target 'build/deps.mk', needed by 'ebin/presence_exchange.beam'. Stop.
그러나 head 명령을 사용하여 파일을 열 수 있습니다.
[email protected] /cygdrive/d/RabbitMQ/build-source/rabbitmq-public-umbrella/presence-exchange-master
$ head /cygdrive/d/RabbitMQ/build-source/rabbitmq-public-umbrella/generate_deps
#!/usr/bin/env escript
%% -*- erlang -*-
-mode(compile).
%% We expect the list of Erlang source and header files to arrive on
%% stdin, with the entries colon-separated.
main([TargetFile, EbinDir]) ->
ErlsAndHrls = [ string:strip(S,left) ||
S <- string:tokens(io:get_line(""), ":\n")],
ErlFiles = [F || F <- ErlsAndHrls, lists:suffix(".erl", F)],
감사합니다.하지만 head 명령을 사용하여 파일을 열 수 있습니다. 위의 편집 1을 참조하십시오. 그 이유는 무엇일까요? – Joshua
같은 파일을 열려고합니까? 또한'head'는 코드를 읽으려는 동안 파일을 열어 코드를 작성하려고 시도합니다. 파일에 어떤 액세스 모드가 있고 어떤 파일 유형입니까? – rvirding
예, 동일한 파일입니다. ls -l은 "-rwxr-xr-x 1 Fujitsu None 2666 Jan 15 13:59 generate_deps"를 리턴합니다. 나는 또한 chmod 777을 시도했다. generate_deps는 bash 파일의 일종으로 여기 코드를 볼 수있다 - http://pastebin.com/N4HVz8z1 – Joshua