Domanda

Quando si compila un file Erlang con erlc posso aggiungere ulteriori includono le directory in questo modo:

erlc -I /home/trotter/code/open-source/yaws/include src/myapp.erl

Quando sto compilando dall'interno erl però, non vedo un modo per fare questo sulla riga di comando. Invece, devo fare la seguente all'interno della repl:

> compile:file("src/myapp", 
               [verbose,
                report_errors,
                {i,"/home/trotter/code/open-source/yaws/include"}]).

C'è un modo migliore per fare questo che io non so, come ad esempio passando qualche argomento riga di comando per Erl? In caso contrario, suggerimenti per l'essiccazione questo up che non mi richiedono di digitare i percorsi brutto ogni volta che compilo.

È stato utile?

Soluzione

io raramente compilare dal guscio - solo per piccoli script di test con c(foo). La mia configurazione è questa:

ho un'infrastruttura di compilazione. make costruisce il software (make è solo un wrapper per rebar qui). Posso poi costruire il codice dall'interno emacs colpendo F12 legata al comando compile emacs. In vim si può fare lo stesso con il comando :make se la memoria non m'inganna vim (è stato un paio di anni). Ora, questo, naturalmente, costruisce il codice e gettarlo in un dir ebin.

Il passo successivo è quello di iniziare con la conoscenza di Erlang dir ebin:

 erl -pa ./ebin

che significa che qualsiasi riferimento a modulo foo va e controlli per ./ebin/foo.beam. Quando ho poi capire che devo risolvere qualche codice, ho fissarlo nell'editor, compilare il codice con F12 e quindi eseguire l(foo) nel guscio che hot-carichi il codice.

Essa ha anche il vantaggio che qualsiasi errore di compilazione è ora sotto la giurisdizione l'editor in modo da poter passare rapidamente l'errore e risolvere il problema.

Altri suggerimenti

è possibile impostare ERL_COMPILER_OPTIONS.

http://www.erlang.org/doc/man/compile.html

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top