ASdf를 통해 여러 버전의 Crystal(Mac·Linux) 관리
먼저
ASdf에서 크리스탈 버전을 전환하고 버전 관리를 하는 방법을 소개한다.
ASdf는 Mac Linux에 대응하는 도구이기 때문에 윈도우로 관리하고 싶은 사람은 WSL에서 ASdf를 사용할 수 있습니다.
asdf에 도착하기 전의 경과
맥의 홈brew에 크리스탈 1.0.0을 설치했지만 크리스탈 0.33.0을 사용하려는 창고가 생겼다.
최신 1.0.0과 이전 0.33.0으로 전환하기를 희망합니다.
Mac Linux에서 Ruby 버전을 관리하는 도구라면 rbenv가 유명합니다.
크리스탈도 비슷한 이름의 크린브를 발견했는데, 최근 제출은 2019년 4월로, 최신Issue#047은 2020년 1월에도'Looking for a manintainer'로 불렸는데, 이 아이슈를 읽고 개발이 중단돼 대체로 asdf를 사용할 수 있게 됐다.
본문 명령 주의사항
일반적으로 명령을 집행할 때 명령임을 알기 위해 첫머리에
$
라고 쓰여 있다.명령의 일부로 잘못 복사하거나 오인하지 않도록 주의하십시오
$
.asdf를 설치하기 전에 기존 크리스탈을 사용할 수 없습니다
내 사정인데, 이미 맥 홈brew에 설치된 크리스탈이 있어.
앞으로는 asdf에 설치된 asdf 관리 하의 크리스탈로 전환
ASdf 관리 밖의 크리스탈 코드를 사용하면 헷갈리기 쉬우므로 미리 설치된 크리스탈을 사용하지 않는 것이 좋다.
Mac에서 홈 brew 관리하고 있는 크리스탈은 다음 명령을 실행하면 크리스탈 명령을 사용할 수 없습니다.
$ brew unlink crystal
Unlinking /usr/local/Cellar/crystal/1.0.0_1... 7 symlinks removed.
원상태로 돌아가고 싶으면 반대로 brew link crystal
원상태로 돌아가 다시 사용할 수 있습니다.asdf의 사용 방법
asdf는 크리스탈 이외에도 모든 버전 관리를 하는 도구입니다.
크리스탈을 쓸 수 있다면 다른 기회가 있을 것 같아서 편리해요.
asdf 설치
먼저 asdf를 설치합니다.
공식Manage asdf부터 읽습니다.
사용하는 모델에 따라 MacOS 또는 Linux를 선택합니다.
MacOS도 다양한 설치 방법이 있으니 Homebrew와 Giit를 선택하는 것이 좋습니다.
자주 사용하는 물건이라면 이용자가 많아 버그를 발견할 가능성이 높다.
선택하면 명령이 나오기 때문에 순서대로 실행합니다.
나는 홈brew로 asdf를 설치했다.
$ brew install asdf
설치가 완료되면 다음 명령에 버전이 표시됩니다.$ asdf version
v0.8.1
일반적인 경우コマンド名 -v
버전이 비교적 많지만 asdf는 그렇지 않습니다.셸에 asdf 적용
Add to your Shell에서 셸을 선택하십시오.
bash인지 zesh인지 헷갈리면 일어설 때마다 자동으로 읽히지 못해 곤란합니다. 자신의 셸을 모르는 분들은 조사해 보세요.
그리고 최신 Mac의 기본값은 zsh입니다. 그러나 이전에는 bash였습니다.
asdf의 공식 설명은 기본적으로 bash이기 때문에 zsh를 사용하는 사람들은 주의해야 한다.
zsh에서 homebrew 항목을 선택하면 다음과 같은 명령이 나타납니다.
$ echo -e "\n. $(brew --prefix asdf)/asdf.sh" >> ${ZDOTDIR:-~}/.zshrc
이 명령을 입력하면 ~/.zshrc
asdf를 시작하는 스크립트를 씁니다.~/.zshrc
를 보면 마지막에 쓰여질 거예요.이 시간에 다음 지령을 읽어서
~/.zshrc
실행하는 것이 좋습니다.$ source ~/.zshrc
ASdf로 크리스탈의 pluggin 설치
asdf의 설치 & 설정을 완료한 후 Manage Plugin와asdf-community/asdf-crystal를 보십시오
ASdf 관리 크리스탈을 위한 추가 도구(pluggin)를 설치합니다.
이것은 asdf-community의 관리로 제작된 것이다.
$ asdf plugin-add crystal https://github.com/asdf-community/asdf-crystal.git
이 명령은 plugin-add
든 plugin add
든 모두 대응할 수 있다.$ asdf plugin list
상기 명령을 실행하면 로컬에 설치된pluggin을 표시합니다.여기에 크리스탈 문자가 나오면 크리스탈용 플러그인을 설치합니다.
ASdf로 Crystal 설치
Manage Versions 내가 가볼게.
이번에 내가 원하는 것은 최신 1.0.0과 0.33.0이다. 다음 지령을 집행하자.
$ asdf install crystal latest
$ asdf install crystal 0.33.0
다음 명령은 로컬로 설치된 크리스탈의 버전을 확인합니다.$ asdf list crystal
명령에 필요한 전환 버전이 나열된 경우 설치가 성공했습니다.또한 설치할 수 있는 모든 버전을 보고 싶을 때 아래 명령을 사용할 수 있습니다
$ asdf list all crystal
asdf에서 크리스탈 버전 전환
Ruby의 rbenv를 사용하는 사람은 바로 적응하는 지령이라고 생각합니다.
글로벌로 설정하는 방법.
$ asdf global crystal 1.0.0
글로벌 크리스탈 버전으로 전환합니다.공식 설명에서 보듯이 홈 디렉터리
~/.tool-versions
에 crystal 1.0.0
를 쓰고 이 설정을 사용합니다.특정 버전에 고정시키려면 이 디렉터리 (프로그램) 에 가서 아래에 설명된local 명령을 사용하십시오.
부분local 설정 방법
다음은 로컬 설정 방법입니다.
$ asdf local crystal 0.33.0
명령을 입력한 후 디렉토리에 .tool-verssion
를 생성하고 crystal 0.33.0
에 씁니다.이 디렉토리의
.tool-versions
는 global
에 설정된 홈 디렉토리의 .tool-versions
보다 우선합니다.적용 여부를 조사하는 방법
나는 여러 가지가 있다고 생각한다. 나는 버전이 바뀌었는지 잘 볼 것이다.
다음 명령을 입력하면 현재 적용되고 있는 크리스탈의 버전과 원본 파일을 알 수 있습니다.
$ asdf current crystal
crystal 1.0.0 ~/.tool-versions
asdf 설정을 사용하지 않아도 크리스탈 명령으로 확인할 수 있습니다.$ crystal -v
Crystal 0.33.0 (2020-02-14)
LLVM: 6.0.1
Default target: x86_64-apple-macosx
이 근처에 버전이 있지만 전환이 없으면 asdf 이외의 홈brew 등에 설치된 크리스탈을 우선적으로 사용할 수 있습니다.zsh라면 ~/.zshrc
의 패스와 별명을 재검토해 볼 만하다.$ which crystal
상기 명령 중 어느 위치의 크리스탈인지 확인하면 됩니다.최후
대체로 공식 문서를 보면 되는데 참고가 됐으면 좋겠어요.
화제를 바꿔 크리스탈도 드디어 버전 1.0.0을 냈지만 크리스탈Advent Calendar 2020은 텅 비어 외로웠습니다. 여러분도 써주시면 좋겠습니다.
Reference
이 문제에 관하여(ASdf를 통해 여러 버전의 Crystal(Mac·Linux) 관리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/universato/articles/20210529-z-crystal텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)