開発環境構築手順(M1 Mac)
はじめに
こんにちはくーるぜろ(@zephel01)です。
M1 Mac 開発環境構築を行います。
M1 Macになって開発環境を構築するのが若干難しくなりました。
そこで手順などを書きたいと思います。
terminalはiterm2を使っています。
shellはzshにしました。(catalina以降はzshが標準)
目次
・homebrewのインストール
・macportsのインストール
・vimの設定
・gitのインストール
・anyenvのインストール(New)
・pyenvのインストール
・pythonのインストール
・pip でアプリインストール
・TA-Libのインストール
・機械学習
homebrewのインストール
※ARM64, x86_64の2種類をインストールします。
$ ## brew install arm64
$ arch -arm64e /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
$ ## brew install x86_64
$ arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
環境変数を追加します。
※ cat から EOFまでコピー
$ cat << 'EOF' >> ~/.zshrc
typeset -U path PATH
path=(
/opt/homebrew/bin(N-/)
/usr/local/bin(N-/)
$path
)
if (( $+commands[sw_vers] )) && (( $+commands[arch] )); then
[[ -x /usr/local/bin/brew ]] && alias brew="arch -arch x86_64 /usr/local/bin/brew"
alias x64='exec arch -x86_64 /bin/zsh'
alias a64='exec arch -arm64e /bin/zsh'
switch-arch() {
if [[ "$(uname -m)" == arm64 ]]; then
arch=x86_64
elif [[ "$(uname -m)" == x86_64 ]]; then
arch=arm64e
fi
exec arch -arch $arch /bin/zsh
}
fi
setopt magic_equal_subst
EOF
zshのエラーを直します。(パーミッションの設定)
$ chmod 755 /usr/local/share/zsh/site-functions
$ chmod 755 /usr/local/share/zsh
プロファイルを読み込みます。
$ exec $SHELL -l
brew でアプリをインストールします。
※注意 x86_64 と ARM64 でインストール方法が違います。
$ brew install vim #x86_64
$ =brew install vim #arm64
$ ## awscli
$ =brew install awscli
$ ## checksum
$ brew install md5sha1sum
$ ## terminal
$ =brew install iterm2
$ ## byobu
$ =brew install byobu
$ ## editor
$ =brew install vim
$ ## clipboard extender
$ =brew install clipy
$ ## git
$ # brew install git
$ ## convert markdown to document file
$ =brew install pandoc
$ ## file downloader
$ =brew install wget
$ ## unarchiver
$ =brew install p7zip
$ ## drawing tool
$ =brew install skitch
$ ## video player
$ =brew install vlc
$ ## Chat soft
$ =brew install slack
macportsをインストールします。
※brew と同じようにアプリのインストールに使います。
$ curl -O https://distfiles.macports.org/MacPorts/MacPorts-2.7.1.tar.bz2
$ tar xf MacPorts-2.7.1.tar.bz2
$ cd MacPorts-2.7.1/
$ ./configure
$ make
$ sudo make install
環境変数を追加します。
$ cat << 'EOF' >> ~/.zshrc
# export macports
export PATH="/opt/local/bin:/opt/local/sbin:$PATH"
export MANPATH="/opt/local/man:$MANPATH"
EOF
環境変数を読み込みます。
$ exec $SHELL -l
macportsのアップデートをします。
$ sudo port selfupdate
vimの設定をします。molokaiをインストールします。
Molokai Color Scheme for Vim
$ mkdir -p ~/.vim/colors
$ cd ~/.vim
$ git clone https://github.com/tomasr/molokai
$ mv molokai/colors/molokai.vim ~/.vim/colors/
$ cp ~/.vimrc ~/.vimrc.bak
$ cat << 'EOF' >> ~/.vimrc
syntax on
colorscheme molokai
set t_Co=256
EOF
anyenvをインストールします。
$ git clone https://github.com/anyenv/anyenv ~/.anyenv
shellの確認をします。
$ echo "$SHELL"
/bin/zsh
PATHの設定をします。
$ cat << 'EOF' >> ~/.zshrc
# export anyenv
if [ -e "$HOME/.anyenv" ]
then
export ANYENV_ROOT="$HOME/.anyenv"
export PATH="$ANYENV_ROOT/bin:$PATH"
if command -v anyenv 1>/dev/null 2>&1
then
eval "$(anyenv init - zsh)"
fi
fi
EOF
プロファイルを読み込みます。
$ exec $SHELL -l
anyenv pluginsをインストールします。
※以降は anyenv updateでまとめてpyenvなどがアップデートできる。
$ mkdir -p $(anyenv root)/plugins
$ git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update
$ anyenv update
anyenvでインストールできるリスト
$ anyenv install --list
Renv #R
crenv #Crystal
denv #D
erlenv #Erlang
exenv #Elixir
goenv #Go
hsenv #Haskell
jenv #Java
jlenv #Julia
luaenv #Lua
nodenv #Node.js
phpenv #PHP
plenv #Perl
pyenv #Python
rbenv #Ruby
sbtenv #Sbt
scalaenv #Scala
swiftenv #Swift
tfenv #terraform
pyenvをインストールします。
$ anyenv install pyenv
PATHを設定します。
$ cat << 'EOF' >> ~/.zprofile
# export pyenv
export PYENV_ROOT="$HOME/.anyenv/envs/pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
EOF
$ cat << 'EOF' >> ~/.zshrc
# export pyenv
eval "$(pyenv init -)"
EOF
プロファイルを読み込みます。
$ exec $SHELL -l
pyenv で python 3.6.13 をインストールします。
$ pyenv install --list
$ arch -arch x86_64 env PATH=${PATH/\/opt\/homebrew\/bin:/} pyenv install 3.8.7
$ pyenv global 3.8.7
$ python --version
$ pip --version
$ pyenv version
各パッケージのインストールをします。
※websocket-clientの最新で不具合があるためバージョン指定でインストール。
$ pip install ccxt
$ pip install simplejson
$ pip install pybitflyer
$ pip install requests
$ pip install datetime
$ pip install websoccket-client==0.47
TA-Libのインストールをします。
$ brew install ta-lib
$ pip install ta-lib
Chromedriverのインストールをします。
$ brew install chromedriver
$ pip install selenium
機械学習するには pyenv で miniforge3-4.9.2 をインストールします。
$ pyenv install miniforge3-4.9.2
$ pyenv global miniforge3-4.9.2
$ exec $SHELL -l
$ conda create -n python3
$ conda install -n python3 tensorflow-addons -c isuruf/label/tf -c conda-forge
$ conda install -n python3 -c conda-forge notebook
$ pyenv global miniforge3-4.9.2/envs/python3
$ exec $SHELL -l
Jupyter Notebookの起動
$ mkdir jupyter
$ cd jupyter
$ jupyter notebook .
参考サイト