GithubHelp home page GithubHelp logo

evm's People

Contributors

altersabeh avatar jesusalc avatar joshrieken avatar kawakami-o3-2nd avatar kmwhite avatar neowulf avatar robisonboxedup avatar robisonsantos avatar schnittchen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

evm's Issues

Depends on `shopt`

Using EVM with Zsh fails because Zsh doesn't provide shopt.

Workaround: switching to bash before using EVM.

Failed to fetch available Erlang versions

Hi recently i have a problem listing Erlang versions, i can't list or download any version of Erlang
here adjunct a picture with some information and error.

Screenshot from 2020-12-20 13-16-57

Thanks!

Homebrew formula for EVM

I'm writing a quick Homebrew formula for EVM here: https://github.com/chriskilding/homebrew-evm

At the moment it installs from the HEAD Git commit, and the post-install step of adding EVM to the shell profile is left to the user.

A couple of questions:

  • Normally brew things are installed under /usr/local/... and the Brew Cellar. This way they're also made available on the path without extra post-install steps (e.g. appending to ~/.zshrc). Would this be applicable to EVM? And if so what would I need to change about its installation to accommodate this?
  • Homebrew formulae work best if you can pin a particular version of the program (this also allows you to add a SHA sum for verification), in addition to the :head install-from-Git option. Would you be able to create stable Semantically Versioned releases of EVM on GitHub Releases?

Doesn't work for me after High Sierra update

Everything compiles but this happens when I execute some library that uses ssl.


Eshell V8.3  (abort with ^G)
1> Assertion failed: (ctx), function digest_update, file /BuildRoot/Library/Caches/com.apple.xbs/Sources/boringssl/boringssl-109.20.5/apple/crypto/digests.c, line 49.
                                                                                                                                                                      [1]    78693 abort      erl -eval 'io:format("~p~n",[crypto:hash(md5, <<"xyzzy">>)]).' -s init stop

Most likely related erlang/otp#1501
Giving a try with kerl since it's marked as fixed since some versions back.

Installing RabbitMQ?

Hi there,

Slightly off-topic, but I am trying to figure out the best way to install RabbitMQ using an erlang version installed with evm.

If I download the .deb package for rabbitmq-server, it seems to have issues recognizing the fact that erlang is installed - just not through apt-get. Specifically, it seems to not have the following "satisfiable dependencies": erlang-nox >= 1:19.3 and esl-erlang >= 1:19.3

Any guidance would be appreciated!

CI installation

evm/evm

Lines 168 to 171 in 8d269e2

echo
echo "Continue with installation?(y/n)"
read cont
makes it impossible to run without user interaction

suggestion - read the CI env variable. If set to true, then skip asking

Problem with extra options on command line

Hi,
to build on my Arch linux system I need to use this command line (fixes some issue with openssl):

evm install OTP_17.3 --with-docs --with-ssl=/home/user/.openssl-1.0 --without-termcap

If I use the lastest evm, it does not wait for y/n confirmation before starting the build, and I see in the shell output that crypto and other things are being disabled because no usable OpenSSL version has been found (as if the command line was not being correctly passed to configure).

If I checkout evm from commitId b42df43, it works as it used to: it shows a nice y/n prompt after configure step, and it does not complain about OpenSSL

Did you change command line options somehow?

`evm installed` output

I think I'm getting a bash error:

~$ evm installed
Installed Erlang versions on this system

-bash: unalias: ls: not found   //<==HERE
19.2

------
=* : current and default
=> : current
 * : default

OSX 10.10.5
~$ evm version
4.0.4

list_available_erl_versions seems broken

Hello @robisonsantos,

I get an error "not valid in this context: OTP_17.1" every time I try to execute an evm command. From my bare minimum bash scripting knowledge I found that list_available_erl_versions might be the cause of this problem.

I run a Ubuntu 14.04.1 x86-64 laptop with ZSH 5.0.2.

dialyzer problems

I have erlang 17.5 installed in /usr/local/lib. evm considers that my "system" install. After installing evm, I downloaded erlang 19.2, and I can switch back and forth between my two versions of erlang using:

$ evm system (erlang 17.5)

$ evm use 19.2  (erlang 19.2)

I was able to set up dialyzer with erlang 17.5, but when I switch to erlang 19.2 and try to setup dialyzer, here is what happens :

~/erlang_programs$ evm use 19.2

~/erlang_programs$ dialyzer
  Checking whether the PLT /Users/7stud/.dialyzer_plt is up-to-date... no
    (the PLT /Users/7stud/.dialyzer_plt was built with an old version of Dialyzer)
  Compiling some key modules to native code... done in 0m0.24s
  Rebuilding the information in /Users/7stud/.dialyzer_plt...
dialyzer: Analysis failed with error:
Could not scan the following file(s):
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/timer.beam    
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/sys.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/supervisor_bridge.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/supervisor.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/lists.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/proc_lib.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/gen_event.beam 
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/gen_server.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/stdlib-2.4/ebin/array.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/kernel-3.2/ebin/seq_trace.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/kernel-3.2/ebin/rpc.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/kernel-3.2/ebin/gen_udp.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/kernel-3.2/ebin/gen_tcp.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/kernel-3.2/ebin/file.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/kernel-3.2/ebin/disk_log.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/kernel-3.2/ebin/code.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/kernel-3.2/ebin/application.beam  
Could not get core Erlang code for: /usr/local/lib/erlang/lib/erts-6.4/ebin/erlang.beam
        Last messages in the log cache:
          Reading files and computing callgraph... 

17.5:
$ which dialyzer
/usr/local/bin/dialyzer

19.2:
$ which dialyzer
/Users/7stud/.evm/erlang_versions/otp_src_19.2/bin/dialyzer

Compile with +debug_info

Hi,

I'm trying to use dialyzer with erlang 19.2 which was installed by evm, but I'm getting this error:

dialyzer --build_plt --apps erts kernel stdlib
dialyzer: Could not get abstract code for file: /home/michel/.evm/erlang_versions/otp_src_19.2/lib/erlang/lib/erts-8.2/ebin/erlang.beam (please recompile it with +debug_info)

How do I tell evm to compile erlang with debug info? Thanks

Usage of "grep -P" in the script

"grep -P" is used in the script at a lot of places. This does not work with the grep included in Max OS X.

I have changed it to "grep -E" and it worked for my purposes, which is to list available versions and install the required version.

Are there any cases where perl specific things are used. If not, can all usages of "grep -P" be changed to "grep -E".

OTP19.3 on Arch Linux fails

Hello,
I am trying to build OTP19.3 on an up-to-date Arch Linux system.
It gives error in configure steps and build eventually fails.
The configure output is attached (build command is "evm install 19.3 --with-docs --with-ssl=/home/seba/.openssl-1.0", I have a custom setup for ssl otherwise it won't work).
It looks to me like some sort of autoconf issue...
Thank you in advance.
configure_stdout.log

Missing erl_call link?

Hi,
usually when installing erlang via deb package erl_call is available in PATH (usually it's in /usr/bin). On my evm installation, erl_call is not found PATH, it's not in .evm/erlang_versions/otp_src_17.3/bin as other erl* commands, but it's available as .evm/erlang_versions/otp_src_17.3/lib/erlang/lib/erl_interface-3.7.18/bin/erl_call. Maybe a symlink to erl_call should be in .evm/erlang_versions/otp_src_17.3/bin too?

Erlang build params not recognized in zsh

When trying to install the OTP_20.2 using evm on zsh I get the following error message:

$ evm install OTP_20.2  --with-ssl=/usr/local/opt/openssl
ARG: --with-ssl=/usr/local/opt/openssl
OTP_20.2 is already cached, don't need to download it
Inflating /Users/sphinxc0re/.evm/erlang_tars/otp_src_20.2.tar.gz
Configuring...
configure: error: invalid variable name:  --with-ssl

Continue with installation?(y/n)
n
Cancelling installation of OTP_20.2

rebar3 woes

I realize this is not directly evm problem, but just asking if there's some way to kill 2 birds with one stone here.

It looks like something changed in > erl23 and a rebar3 compiled with sayl, er23 barfs when run against erl25 with

init terminating in do_boot ({undef,[{rebar3,main,[],[]},{init,start_em,1,[]},{init,do_boot,3,[]}]})

This requires recompiling rebar3 when switching with evm. What would be the cleanest way to leverage how evm works such that switching evm would also switch rebar3 version? I can do the work and send a PR. Thanks.

How to enable Observer using evm?

An error occurs when the observer is invoked.

$ erl -sname observer -hidden -setcookie MyCookie -run observer -init_debug
{progress,preloaded}
{progress,kernel_load_completed}
{progress,modules_loaded}
{start,heart}
{start,error_logger}
{start,application_controller}
{progress,init_kernel_started}
{apply,{application,load,[{application,stdlib,[{description,"ERTS  CXC 138 10"},{vsn,"1.18.3"},{id,[]},{modules,[array,base64,beam_lib,binary,c,calendar,dets,dets_server,dets_sup,dets_utils,dets_v8,dets_v9,dict,digraph,digraph_utils,edlin,edlin_expand,epp,eval_bits,erl_bits,erl_compile,erl_eval,erl_expand_records,erl_internal,erl_lint,erl_parse,erl_posix_msg,erl_pp,erl_scan,erl_tar,error_logger_file_h,error_logger_tty_h,escript,ets,file_sorter,filelib,filename,gb_trees,gb_sets,gen,gen_event,gen_fsm,gen_server,io,io_lib,io_lib_format,io_lib_fread,io_lib_pretty,lib,lists,log_mf_h,math,ms_transform,orddict,ordsets,otp_internal,pg,pool,proc_lib,proplists,qlc,qlc_pt,queue,random,re,sets,shell,shell_default,slave,sofs,string,supervisor,supervisor_bridge,sys,timer,unicode,win32reg,zip]},{registered,[timer_server,rsh_starter,take_over_monitor,pool_master,dets]},{applications,[kernel]},{included_applications,[]},{env,[]},{maxT,infinity},{maxP,infinity}]}]}}
{progress,applications_loaded}
{apply,{application,start_boot,[kernel,permanent]}}
Erlang R15B03 (erts-5.9.3) [source] [smp:6:6] [async-threads:0] [hipe] [kernel-poll:false]

{apply,{application,start_boot,[stdlib,permanent]}}
{apply,{c,erlangrc,[]}}
{progress,started}
Eshell V5.9.3  (abort with ^G)
(observer@node1> 
=ERROR REPORT==== 21-Aug-2013::15:44:56 ===
ERROR: Could not find 'wxe_driver.so' in: /home/user/.evm/erlang_versions/otp_src_R15B03/lib/erlang/lib/wx-0.99.2/priv

(observer@node)1> 

Unable to list installed versions

When typing in evm installed I get an error saying:

evm_installed:30: command not found: dir

EDIT: This is happending using zsh as a shell

`set -o errexit` affects all Bash usage after sourcing

I wonder if adding this means the evm script is not supposed to be sourced anymore, or an unset of this option is needed at the end of the script? Because currently, after the script has done its job, the shell is still set to exit upon any errors, like mistyping a command.

At least observed on:

  • Windows Subsystem for Linux version: Windows 10 build 19044
  • Distro: Ubuntu 18.04.5 on Windows
  • Kernel version: 5.10.16.3-microsoft-standard-WSL2
  • Bash version: 4.4.20(1)-release (x86_64-pc-linux-gnu)

`evm installed` outputs illegal characters

OSX 10.10.5
$ evm version
4.0.4

Here is the output from evm installed before choosing an erlang version:

~/.evm/scripts$ evm installed
Installed Erlang versions on this system

19.2

------
=* : current and default
=> : current
 * : default

Then I choose the erlang version:

~$ evm use 19.2

And now the problem reveals itself:

~$ evm installed
Installed Erlang versions on this system

\e[1;32m=> 19.2\e[0m     //<===HERE

------
=* : current and default
=> : current
 * : default

I'm using OSX's Terminal app, and I have the "text encoding" setting (under Preferences>Profiles>Advanced Tab) set to UTF-8.

I tried changing my terminal's encoding to Latin-1, but I get the exact same output.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.