Homebrew + asdf with Apple M1

6917 단어 HomebrewasdfM1tech
M1Mac에 홈brew와 asdf를 사용하는 환경 구축 방법을 기록합니다.

Homebrew 설정


설치 방법에 따라 설치됩니다.
이번 가설은 /opt/homebrew에 설치되었다.

설정 전환


추가 x8664 버전을 가져오는 경우 ~/.bash_profile 또는 ~/.zprofile에 전환 설정을 미리 적습니다.
if [ "$(uname -m)" = "x86_64" ]; then
    eval $(/homebrew/bin/brew shellenv)
else
    eval $(/opt/homebrew/bin/brew shellenv)
fi

export HOMEBREW_CACHE="$(brew --prefix)/cache"

if [ -f ~/.bashrc ] ; then
    . ~/.bashrc
fi
coreuitls와 같은 PATH를 통과한 경우 $(brew --prefix [command]) 또는 $HOMEBREW_PREFIX로 교체한다.
export PATH="$HOMEBREW_PREFIX/opt/coreutils/libexec/gnubin:$PATH"
# 以下と同じ
#export PATH="$(brew --prefix coreutils)/libexec/gnubin:$PATH"

asdf 설정


설치 방법에 따라 설치됩니다.

필요한 것


버젼은 확인했습니다.

  • digdag : 0.9.41

  • golang : 1.17.4

  • java : liberica-8u312+7, liberica-11.0.13+8, openjdk-17.0.1

  • kotlin : 1.6.10

  • nodejs : 14.17.0, 16.13.1

  • python : 3.9.6

  • ruby : 3.0.3

  • hashicorp
  • terraform: 1.0.6

  • py-app
  • ansible-base: 2.10.16
  • k8s

  • kubectl : 1.19.16, 1.22.4

  • flux2 : 0.24.0

  • skaffold : 1.19.0-darwin-arm64, 1.34.0

  • kustomize : 3.6.1
  • unofficial

  • openapi-generator : 5.1.0
  • 필요한 것

  • python: 3.9.7~, 3.10.0
  • 빌드 오류
  • ruby: 2.6.5
  • 필요 환경 변수: RUBY_CONFIGURE_OPTS='--build aarch64-apple-darwin20.6' RUBY_CFLAGS=-DUSE_FFI_CLOSURE_ALLOC

  • postgres : 11.14, 12.1
  • 필요 환경 변수: POSTGRES_CONFIGURE_OPTIONS='--build aarch64-apple-darwin20.6' LDFLAGS="-L$(brew --prefix openssl)/lib" CPPFLAGS="-I$(brew --prefix openssl)/include"

  • 단말기


    응용 프로그램 등록 정보Rosettaを使用して開く가 활성화된 경우 x8664 호환 실행
    (Finder에서 마우스 오른쪽 버튼으로 클릭アプリケーション/ユーティリティ/ターミナル.app정보 보기를 선택한 후 열기 설정)
    # Rosettaを費用して開く off
    $ uname -m
    arm64
    # Rosettaを費用して開く on
    $ uname -m
    x86_64
    
    arch 명령을 사용하여 일시적으로 분리할 수도 있습니다.
    # arm64
    $ arch -x86_64 bash
    $ uname -m
    x86_64
    # x86_64
    $ arch -arm64e bash
    $ uname -m
    arm64
    

    Terraform


    대응하는 것이 아닌 것은 스스로 구축~/.terraform.d/plugins 이하 설정입니다.
    하지만hash가 변하기 때문에 .terraform.lock.hcl처리에 주의해야 한다.
    hashicorp/terraform-provider-template의 예:
    $ git checkout v2.2.0
    $ go mod vendor
    $ go build .
    $ install -D terraform-provider-template ~/.terraform.d/plugins/registry.terraform.io/hashicorp/template/2.2.0/darwin_arm64/terraform-provider-template
    

    좋은 웹페이지 즐겨찾기