2014-10-26 4 views
3

Я создаю escript, и все кажется хорошо, но я не могу вызывать сгенерированный исполняемый файл escript.Как запустить Эликсирский escript в Windows 8.1

> смесь escript.build

lib/cmdlineutil.ex:2: warning: variable args is unused 
Compiled lib/cmdlineutil.ex 
Generated cmdlineutil.app 
Consolidated Access 
Consolidated Collectable 
Consolidated Enumerable 
Consolidated Inspect 
Consolidated List.Chars 
Consolidated Range.Iterator 
Consolidated String.Chars 
Consolidated protocols written to _build/dev/consolidated 
Generated escript cmdlineutil with MIX_ENV=dev 

> cmdlineutil

'cmdlineutil' не распознается как внутренней или внешней командой, исполняемой программой или пакетным файлом.

> мв cmdlineutil cmdlineutil.exe

> cmdlineutil.exe

Эта версия C: \ Git \ эликсира \ cmdlineutil \ cmdlineutil.exe не совместимы с версией Windows, что вы работаете. Проверьте системную информацию компьютера и обратитесь к издателю программного обеспечения. коробка

Сообщение:

неподдерживаемый 16-разрядное приложение

Программа или функция "\ ?? \ C: \ Git \ эликсира \ cmdlineutil \ cmdlineutil.exe" не может начинаться или из-за несовместимости с 64-разрядными версиями Windows. Обратитесь к поставщику программного обеспечения, чтобы узнать, доступна ли 64-разрядная версия Windows.

Lib \ cmdlineutil.ex:

defmodule CmdLineUtil.Echo do 
    def main(args) do 
     IO.puts "Hello!" 
    end 
end 

mix.exs:

defmodule CmdLineUtil.Echo.Mixfile do 
    use Mix.Project 

    def project do 
    [app: :cmdlineutil, 
    version: "0.0.1", 
    elixir: "~> 1.0.0", 
    escript: escript, 
    deps: deps] 
    end 

    def escript do 
    [main_module: CmdLineUtil.Echo] 
    end 

    # Configuration for the OTP application 
    # 
    # Type `mix help compile.app` for more information 
    def application do 
    [applications: [:logger]] 
    end 

    # Dependencies can be Hex packages: 
    # 
    # {:mydep, "~> 0.3.0"} 
    # 
    # Or git/path repositories: 
    # 
    # {:mydep, git: "https://github.com/elixir-lang/mydep.git", tag: "0.1.0"} 
    # 
    # Type `mix help deps` for more examples and options 
    defp deps do 
    [] 
    end 
end 
+1

отлично работает в Cygwin. Я вижу это в документах, не уверен, что это актуально: *: shebang - shebang interpreter директива, используемая для выполнения escript. По умолчанию используется «#!/Usr/bin/env escript \ n». * –

+0

Doh! Theres - команда escript. *> escript cmdlineutil * –

ответ

10

Theres в escript команда установлена ​​с Erlang.

> escript cmdlineutil