讲师中心 微信公众号
AI工具推荐 视频效率加速

麒麟OS怎么安装Elixir语言_麒麟OS Elixir开发环境搭建配置教程【进阶】

星宇吖_4215

星宇吖_4215

发布时间:2026-04-07 09:47:32

|

499人浏览过

|

来源于php中文网

原创

麒麟OS上Elixir环境搭建推荐asdf管理器(多版本共存)、源码编译(适配aarch64/loongarch64)、Docker容器化(隔离依赖)及ElixirLS配置(支持VS Code/Neovim)。

麒麟os怎么安装elixir语言_麒麟os elixir开发环境搭建配置教程【进阶】

如果您在麒麟操作系统(Kylin OS)上尝试搭建Elixir开发环境,但遇到依赖不兼容、Erlang版本缺失或LSP服务无法启动等问题,则很可能是由于系统源未适配、架构识别错误或环境变量未正确注入所致。以下是针对Kylin V10(x86_64/aarch64/loongarch64)的多种可行安装路径:

一、使用asdf版本管理器安装(推荐多版本共存场景)

asdf是跨语言的版本管理工具,可独立控制Erlang与Elixir版本,避免与系统包管理器冲突,特别适用于需同时维护多个Elixir项目的开发者。

1、安装asdf核心工具:执行命令 git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.14.0。

2、启用shell插件:在 ~/.bashrc 或 ~/.zshrc 中追加 source $HOME/.asdf/asdf.sh 与 source $HOME/.asdf/completions/asdf.bash,然后执行 source ~/.bashrc。

3、添加Erlang和Elixir插件:依次运行 asdf plugin add erlang https://github.com/asdf-vm/asdf-erlang.git 与 asdf plugin add elixir https://github.com/asdf-vm/asdf-elixir.git。

4、安装指定版本:执行 asdf install erlang ref:OTP-26.3.2(支持Kylin内核的稳定版),再执行 asdf install elixir 1.17.2-otp-26。

5、设为全局默认:运行 asdf global erlang ref:OTP-26.3.2 与 asdf global elixir 1.17.2-otp-26,验证 elixir --version 和 erl -version。

二、通过源码编译安装(适用于aarch64/loongarch64等非x86架构)

麒麟OS部分国产CPU平台(如飞腾FT-2000+/鲲鹏920/龙芯3A6000)缺乏预编译的Erlang二进制包,需从源码构建以确保指令集兼容与性能优化。

1、安装编译依赖:运行 sudo apt install -y build-essential autoconf m4 libncurses5-dev libssh-dev libssl-dev libxml2-dev libwxgtk3.0-gtk3-dev libgl1-mesa-dev libglu1-mesa-dev。

2、下载Erlang源码:访问 https://github.com/erlang/otp/releases/tag/OTP-26.3.2,下载 otp_src_26.3.2.tar.gz 并解压至 /tmp/otp_src_26.3.2。

3、配置并编译:进入解压目录,执行 ./configure --prefix=/opt/erlang-26.3.2 --enable-smp-support --enable-threads --enable-kernel-poll --without-javac;随后运行 make -j$(nproc) 与 sudo make install。

4、安装Elixir源码:克隆 https://github.com/elixir-lang/elixir.git,检出 tag v1.17.2,执行 make && sudo make install,默认安装至 /usr/local/bin。

5、配置环境变量:创建 /etc/profile.d/elixir.sh,写入 export PATH="/opt/erlang-26.3.2/bin:/usr/local/bin:$PATH",执行 source /etc/profile.d/elixir.sh。

三、基于Docker容器化部署(隔离性强,规避系统级依赖冲突)

在麒麟OS中启用Docker后,可通过官方Elixir镜像快速获得纯净、可复现的开发环境,尤其适合CI/CD集成与临时调试场景,无需修改宿主机系统状态。

1、确认Docker已就绪:执行 sudo systemctl is-active docker,若返回 inactive 则先运行 sudo systemctl start docker。

2、拉取适配镜像:根据CPU架构选择——x86_64用 docker pull hexpm/elixir:1.17.2-erlang-26.3.2;aarch64用 docker pull --platform linux/arm64 hexpm/elixir:1.17.2-erlang-26.3.2。

3、运行交互式容器:执行 docker run -it --rm -v $(pwd):/workspace -w /workspace hexpm/elixir:1.17.2-erlang-26.3.2 bash。

4、验证运行时:容器内直接输入 elixir -e "IO.puts(:hello)",输出 hello 即表示环境可用。

5、挂载配置文件:将本地 .iex.exs、.tool-versions 等文件通过 -v 参数映射入容器,实现开发习惯延续。

四、配置ElixirLS语言服务器(VS Code / Neovim 支持)

ElixirLS提供跳转定义、实时诊断、重构建议等IDE级能力,其运行依赖Erlang/OTP与Mix工程结构,必须确保宿主机或容器内已正确安装对应版本的Erlang与Elixir。

1、克隆ElixirLS仓库:执行 git clone https://gitcode.com/gh_mirrors/eli/elixir-ls.git ~/elixir-ls。

2、进入目录并构建:运行 cd ~/elixir-ls && MIX_ENV=prod mix do deps.get, compile,生成 _build/prod/rel/language_server/bin/language_server。

3、设置VS Code扩展:在扩展市场安装 ElixirLS: Elixir Support,打开设置,将 Elixir SLS: Path 指向上述生成的二进制路径。

4、Neovim适配:若使用 kickstart.nvim,在 lua/custom/plugins/init.lua 中添加 use {'elixir-lsp/elixir_ls', run = 'mix compile'},并确保 :checkhealth lspconfig 显示正常。

5、权限校验:对 language_server 二进制文件执行 chmod +x _build/prod/rel/language_server/bin/language_server,防止因权限不足导致LSP启动失败。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

LibLibAI
LibLibAI Hot

一款AI视频创作工具,主要用于国内领先的AI创意平台,以海量模型、低门槛操作与“创作-分享-商业化”生态,让小白与专业创作者都能高效实现图文乃至视频创意表达,适合需要提升相关任务效率的用户。

相关专题

更多
erlang语言是什么
erlang语言是什么

erlang是一种并发、容错、分布式和动态类型的编程语言。它专门用于构建并发系统,并提供了一个轻量级进程模型来实现并发性。想了解更多erlang的相关内容,可以阅读本专题下面的文章。

1338

2024.06.19

github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

8285

2026.01.21

GitHub官网入口版本汇总
GitHub官网入口版本汇总

本专题整合了GitHub入口版本地址汇总,阅读专题下面的文章了解更多详细内容。

758

2026.04.02

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

5359

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

1640

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

934

2023.07.24

git提交错误怎么撤回
git提交错误怎么撤回

git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

3497

2024.04.09

git怎么对比两个版本的文件内容
git怎么对比两个版本的文件内容

要对比两个版本的 git 文件,请使用 git diff 命令:git diff 比较工作树和暂存区之间的差异。git diff 比较两个提交或标签之间的差异。git diff 输出显示差异块,其中 + 表示添加的行,- 表示删除的行, 表示修改的行。可使用 gitkraken、meld、beyond compare 等可视化工具更直观地查看差异。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

3181

2024.04.09

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

0

2026.09.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn