Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When compiling from source, global erlang version is used #113

Open
dylan-chong opened this issue Jan 11, 2022 · 3 comments
Open

When compiling from source, global erlang version is used #113

dylan-chong opened this issue Jan 11, 2022 · 3 comments

Comments

@dylan-chong
Copy link

The local version of erlang should be used to compile elixir.
This will prevent issues where you compile elixir after compiling erlang inside a repository with a different erlang version to the global, and encountering unexpected issues

@Stratus3D
Copy link
Member

@dylan-chong sorry for the late reply here. Can you provide the output of asdf info, any .tool-versions files you used, and the sequence of steps you performed that caused this issue?

asdf should already use the Erlang version you specified in your .tool-versions file if you've set it and the shims have been generate (asdf reshim).

@dylan-chong
Copy link
Author

dylan-chong commented Mar 29, 2022

Hi, this is specific to installing Elixir where the global erlang version differs from the local one inside a project. This I presume is because the cwd when installing erlang is outside the project, so the global version is used

> asdf info
OS:
Darwin Dylans-Work-MBP-M1.local 21.2.0 Darwin Kernel Version 21.2.0: Sun Nov 28 20:29:10 PST 2021; root:xnu-8019.61.5~1/RELEASE_ARM64_T8101 arm64

SHELL:
GNU bash, version 3.2.57(1)-release (arm64-apple-darwin21)
Copyright (C) 2007 Free Software Foundation, Inc.

ASDF VERSION:
v0.9.0

ASDF ENVIRONMENT VARIABLES:
ASDF_DIR=/opt/homebrew/Cellar/asdf/0.9.0/libexec

ASDF INSTALLED PLUGINS:
elixir                       https://github.com/asdf-vm/asdf-elixir.git master 8d018f2
erlang                       https://github.com/asdf-vm/asdf-erlang.git master 255743c
nodejs                       https://github.com/asdf-vm/asdf-nodejs.git master 0237452
terraform                    https://github.com/asdf-community/asdf-hashicorp.git master 6739b2a
yarn                         https://github.com/twuni/asdf-yarn.git main 376c540

Dylan@Dylans-Work-MBP-M1:(improvement/consumer-process-message-in-fresh-process)~/Development/solve/solvedata/solve/api/src
> cat .tool-versions
erlang 24.2
elixir ref:v1.13.1

Dylan@Dylans-Work-MBP-M1:(improvement/consumer-process-message-in-fresh-process)~/Development/solve/solvedata/solve/api/src
> cat ~/.tool-versions
nodejs 14.18.0
elixir ref:v1.13.3
yarn 1.22.17
erlang 23.3.4.12

@dylan-chong
Copy link
Author

dylan-chong commented Mar 29, 2022

You can also test this by unsetting the global erlang version in ~/.tool-versions

> asdf current
elixir          ref:v1.13.1     /Users/Dylan/Development/solve/solvedata/solve/api/src/.tool-versions
erlang          24.2            /Users/Dylan/Development/solve/solvedata/solve/api/src/.tool-versions
nodejs          14.18.0         /Users/Dylan/Development/solve/solvedata/.nvmrc
terraform       ______          No version is set. Run "asdf <global|shell|local> terraform <version>"
yarn            1.22.17         /Users/Dylan/.tool-versions

> asdf install elixir ref:v1.13.2
==> Checking whether specified Elixir reference exists...
==> Downloading v1.13.2 to /Users/Dylan/.asdf/downloads/elixir/ref-v1.13.2/elixir-ref-v1.13.2-src.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   137  100   137    0     0    582      0 --:--:-- --:--:-- --:--:--   603
100 2852k    0 2852k    0     0  1599k      0 --:--:--  0:00:01 --:--:-- 3533k
==> Making the release
rm -rf ebin
rm -rf lib/*/ebin
rm -rf lib/elixir/src/elixir_parser.erl
rm -rf lib/*/_build/
rm -rf lib/*/tmp/
rm -rf lib/elixir/test/ebin/
rm -rf lib/mix/test/fixtures/deps_on_git_repo/
rm -rf lib/mix/test/fixtures/git_rebar/
rm -rf lib/mix/test/fixtures/git_repo/
rm -rf lib/mix/test/fixtures/git_sparse_repo/
rm -f erl_crash.dump
rm -f man/elixir.1
rm -f man/elixir.1.bak
rm -f man/iex.1
rm -f man/iex.1.bak
No version is set for command erlc
Consider adding one of the following versions in your config file at /Users/Dylan/.tool-versions
erlang 24.1.7
erlang 24.2
make: *** [lib/elixir/src/elixir_parser.erl] Error 126
Build failed, cleaning...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants