如何在 Windows 中拥有最新版本的 Elixir
Posted
技术标签:
【中文标题】如何在 Windows 中拥有最新版本的 Elixir【英文标题】:How to have latest version of Elixir in Windows 【发布时间】:2021-11-13 22:48:02 【问题描述】:背景
我在一台 Windows 机器上,我希望在其中安装最新版本的 elixir。这比预期的要难。
研究
最初我在 Windows 上搜索了类似于 asdf 的东西,但在这个平台上没有类似的东西。 Scoop 是最接近的工具,但它需要我编写自定义脚本并学习另一种工具,我现在不喜欢这两件事:
https://elixirforum.com/t/elixir-version-manager-for-windows/39399/5
然后我转向巧克力:
https://community.chocolatey.org/packages?q=elixir
这看起来很完美,但它已经严重过时了,仅在 11.X 版本中 没有任何更新的信号,所以这个也出来了。
我最后的希望,也许是 Docker……
https://hub.docker.com/_/elixir
看起来有一个 12.X 版本,希望使用 OTP 24(我的目标):
FROM erlang:24
# elixir expects utf8.
ENV ELIXIR_VERSION="v1.12.3" \
LANG=C.UTF-8
RUN set -xe \
&& ELIXIR_DOWNLOAD_URL="https://github.com/elixir-lang/elixir/archive/$ELIXIR_VERSION.tar.gz" \
&& ELIXIR_DOWNLOAD_SHA256="c5affa97defafa1fd89c81656464d61da8f76ccfec2ea80c8a528decd5cb04ad" \
&& curl -fSL -o elixir-src.tar.gz $ELIXIR_DOWNLOAD_URL \
&& echo "$ELIXIR_DOWNLOAD_SHA256 elixir-src.tar.gz" | sha256sum -c - \
&& mkdir -p /usr/local/src/elixir \
&& tar -xzC /usr/local/src/elixir --strip-components=1 -f elixir-src.tar.gz \
&& rm elixir-src.tar.gz \
&& cd /usr/local/src/elixir \
&& make install clean \
&& find /usr/local/src/elixir/ -type f -not -regex "/usr/local/src/elixir/lib/[^\/]*/lib.*" -exec rm -rf + \
&& find /usr/local/src/elixir/ -type d -depth -empty -delete
CMD ["iex"]
问题
但是,我还不相信。我对 Docker 容器的唯一经历是非常痛苦的。我知道在此期间情况发生了变化,Docker 似乎是大多数开发人员争取的解决方案。
但是,我不确定投资这个工具(请记住,我放弃了独家新闻是因为我不想投资它)是否会得到回报:
我能否使用容器为 Windows 创建版本? 我也可以为 Ubuntu 创建发行版吗? (我很确定我不能,因为我的主机是 Windows,但只是确认) 你们有没有推荐任何适用于 Windows 的指南?替代方案
我觉得我正在触及桶底。老实说,我已经没有选择了。欢迎任何想法。
【问题讨论】:
Elixir 在 Windows 中的开发很困难。最终或暂时建立一切的大量努力。我最终选择了wsl2 ubuntu。我对此很满意。推荐你切换! 【参考方案1】:对不起,我没有在 Windows 上使用 Elixir 的个人经验,但引用了 official site 的说明:
Download the installer 点击下一步,下一步,...,完成
来自安装程序README:
下载并安装最新的 Elixir 版本,或用户选择的其他版本
【讨论】:
没问题,除了 1 个细节。该版本不附带 OTP 24,因此它不是最新的。【参考方案2】:回答
这并不容易。我不得不等待 Windows 二进制文件准备好。 获得最新版本的唯一方法是自己编译。
步骤 1
但是,如果您无法做到这一点,请使用最新的 Erlang/OTP 你必须去这里的版本:
https://www.erlang.org/downloads我在这里下载了 Erlang/OTP 24。
第二步
之后,我下载了 Windows 版 Elixir 的官方版本,并将其配置为使用我已经安装的 Erlang/OTP 版本(默认情况下):
https://elixir-lang.org/install.html#windows第 3 步(可选)
最后一步,如果你想拥有 Elixir 的桌面应用程序,是下载 Edge 的 WebView 支持:
https://msedge.sf.dl.delivery.mp.microsoft.com/filestreamingservice/files/b97b52c3-9a66-419c-9ef0-90e3a3f72c5c/MicrosoftEdgeWebview2Setup.exe
完成!
【讨论】:
以上是关于如何在 Windows 中拥有最新版本的 Elixir的主要内容,如果未能解决你的问题,请参考以下文章
如何在windows下搭建Nginx+MySQL+PHP环境