- 投稿日:2020-08-02T22:54:36+09:00
DockerでビルドしたQWidgetアプリをMacに表示
MacにXサーバをインストール
XQuartz からMacにXサーバをインストールする。
Xサーバを起動してXサーバへのアクセスを許可
インストールしたXQuartzを実行してxtermを起動し、xhostにてXサーバへのアクセスを許可するように変更する。
xhost +DockerでQtのサンプルアプリをビルド
Qtビルド環境のDockerの作成 で作成したイメージからコンテナを作成する。
docker run -it --name test masana/ubuntu-qtenv:qt5.10.1 /bin/bash実行に必要なモジュールをインストール
作成したコンテナにおいて、xcbクライアントの実行に必要なモジュールをインストールする。
apt-get install -y libxi6 libxrender1ビルドだけでなく実行を前提とするなら、ビルド環境を作成するDockerfileにて上記を追記しておく。
サンプルアプリを実行
作成したコンテナにおいて、ビルドしたサンプルアプリケーションを実行する。
/tmp/sample/sample -display {ホストのMacのIPアドレス}:0.0MacにQtのウィンドウが表示される。
- Qtのサンプルプログラム
#include <QApplication> #include <QLabel> int main(int argc, char *argv[]) { QApplication a(argc, argv); QLabel label; label.setText("TEST"); label.setAlignment(Qt::AlignCenter); label.setGeometry(100,100,500,500); label.show(); return a.exec(); }
- 投稿日:2020-08-02T22:36:30+09:00
iPhoneでMacのlocalhostを開く方法【実機でテストする】
iPhoneでMacのlocalhostを開く方法になります。
コーディング等を実機で確認したい時に便利です。iPhoneとMacを接続する
まずは、iPhoneとMacをUSBで接続します。
Macの共有を開く
Macで
システム環境開発 > 共有
を開くアドレスをコピー
上記の画像のアドレス部分~~~~.local
をコピーします。iPhoneでコピーしたアドレスにアクセスする
上記でコピーしたアドレスにポート番号を追加することで、iPhondeでMacのlocalhostにアクセスできます。
例
https://~~~~~.local:3000
http://~~~~~.local:8000
- 投稿日:2020-08-02T21:08:15+09:00
Mac でDjango の開発環境を構築する
- 投稿日:2020-08-02T18:48:10+09:00
Mac でPython の開発環境を構築する
バージョン、パッケージ管理
brew install pyenv brew install pipenv設定
.bash_profile または .zshrc に追記
export PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)"
source ~/.bash_profile
source ~/.zshrc
のいずれかを実行Python
pyenv install -l pyenv install 3.8.5 pyenv global 3.8.5ターミナルを終了させて、もう一度起動する
python --version
で 3.8.5 になっていることを確認する
- 投稿日:2020-08-02T17:20:40+09:00
macOS Big Sur で pyenv が使えない場合
こんなふうになってしまう場合
% pyenv install 3.8.3 ・・・・ configure: error: C compiler cannot create executablesXcode 12のインストール
https://developer.apple.com/download/more/
- Xcode 12 beta 3
- Command Line Tools for Xcode 12 beta 3
この2つをダウンロードしてインストール
Xcode → Preference から コマンドラインツールで使うXcodeを 12 beta 3にしておく
zlib インストール
% brew install zlib % export LDFLAGS="-L/usr/local/opt/zlib/lib" % export CPPFLAGS="-I/usr/local/opt/zlib/include"python インストール
% CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix bzip2)/include -I$(brew --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include" LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib" pyenv install --patch 3.8.0 < <(curl -sSL https://github.com/python/cpython/commit/8ea6353.patch\?full_index\=1) python-build: use openssl@1.1 from homebrew python-build: use readline from homebrew Downloading Python-3.8.0.tar.xz... -> https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tar.xz Installing Python-3.8.0... patching file Misc/NEWS.d/next/macOS/2020-06-24-13-51-57.bpo-41100.mcHdc5.rst patching file configure Hunk #1 succeeded at 3394 (offset -32 lines). patching file configure.ac Hunk #1 succeeded at 498 (offset -12 lines). python-build: use readline from homebrew python-build: use zlib from xcode sdk Installed Python-3.8.0 to /Users/[USER]/.pyenv/versions/3.8.0% CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix bzip2)/include -I$(brew --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include" LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib" pyenv install --patch 3.8.3 < <(curl -sSL https://github.com/python/cpython/commit/8ea6353.patch\?full_index\=1) python-build: use openssl@1.1 from homebrew python-build: use readline from homebrew Downloading Python-3.8.3.tar.xz... -> https://www.python.org/ftp/python/3.8.3/Python-3.8.3.tar.xz Installing Python-3.8.3... patching file Misc/NEWS.d/next/macOS/2020-06-24-13-51-57.bpo-41100.mcHdc5.rst patching file configure Hunk #1 succeeded at 3398 (offset -28 lines). patching file configure.ac Hunk #1 succeeded at 498 (offset -12 lines). python-build: use readline from homebrew python-build: use zlib from xcode sdk Installed Python-3.8.3 to /Users/[USER]/.pyenv/versions/3.8.3確認
% pyenv versions * system (set by /Users/[USER]/.pyenv/version) 3.8.0 3.8.3
- 投稿日:2020-08-02T17:20:40+09:00
macOS Big Sur で pyenv Python インストールできない場合
こんなふうになってしまう場合
% pyenv install 3.8.3 ・・・・ configure: error: C compiler cannot create executablesXcode 12のインストール
https://developer.apple.com/download/more/
- Xcode 12 beta 3
- Command Line Tools for Xcode 12 beta 3
この2つをダウンロードしてインストール
Xcode → Preference から コマンドラインツールで使うXcodeを 12 beta 3にしておく
zlib インストール
% brew install zlib % export LDFLAGS="-L/usr/local/opt/zlib/lib" % export CPPFLAGS="-I/usr/local/opt/zlib/include"python インストール
% CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix bzip2)/include -I$(brew --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include" LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib" pyenv install --patch 3.8.0 < <(curl -sSL https://github.com/python/cpython/commit/8ea6353.patch\?full_index\=1) python-build: use openssl@1.1 from homebrew python-build: use readline from homebrew Downloading Python-3.8.0.tar.xz... -> https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tar.xz Installing Python-3.8.0... patching file Misc/NEWS.d/next/macOS/2020-06-24-13-51-57.bpo-41100.mcHdc5.rst patching file configure Hunk #1 succeeded at 3394 (offset -32 lines). patching file configure.ac Hunk #1 succeeded at 498 (offset -12 lines). python-build: use readline from homebrew python-build: use zlib from xcode sdk Installed Python-3.8.0 to /Users/[USER]/.pyenv/versions/3.8.0% CFLAGS="-I$(brew --prefix openssl)/include -I$(brew --prefix bzip2)/include -I$(brew --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include" LDFLAGS="-L$(brew --prefix openssl)/lib -L$(brew --prefix readline)/lib -L$(brew --prefix zlib)/lib -L$(brew --prefix bzip2)/lib" pyenv install --patch 3.8.3 < <(curl -sSL https://github.com/python/cpython/commit/8ea6353.patch\?full_index\=1) python-build: use openssl@1.1 from homebrew python-build: use readline from homebrew Downloading Python-3.8.3.tar.xz... -> https://www.python.org/ftp/python/3.8.3/Python-3.8.3.tar.xz Installing Python-3.8.3... patching file Misc/NEWS.d/next/macOS/2020-06-24-13-51-57.bpo-41100.mcHdc5.rst patching file configure Hunk #1 succeeded at 3398 (offset -28 lines). patching file configure.ac Hunk #1 succeeded at 498 (offset -12 lines). python-build: use readline from homebrew python-build: use zlib from xcode sdk Installed Python-3.8.3 to /Users/[USER]/.pyenv/versions/3.8.3確認
% pyenv versions * system (set by /Users/[USER]/.pyenv/version) 3.8.0 3.8.3
- 投稿日:2020-08-02T14:32:59+09:00
新しいMacを買ってからpyenv + poetryでPythonの環境構築手順書
前提
MacOS Catalinaでの手順です。
zsh対応しています。pyenvとは?
Pythonのバージョンを簡単に切り替えるためのツールとなります。
最近はPython2は使うことないと思いますが、Python3内でのバージョン切り替えが簡単にできるようになるのは便利です。poetryとは?
Pythonのパッケージ管理するツールとなります。
.zshrcの設定
echo 'export PIPENV_VENV_IN_PROJECT=1' >> ~/.zshrc . ~/.zshrcecho $PIPENV_VENV_IN_PROJECT > 1pyenvのインストール
git clone git://github.com/yyuu/pyenv.git ~/.pyenv git clone git://github.com/yyuu/pyenv-update.git ~/.pyenv/plugins/pyenv-update~/.zshrcにパスを追加
vim ~/.zshrc.zshrcexport PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" if command -v pyenv 1>/dev/null 2>&1; then eval "$(pyenv init -)" fiターミナルを再起動
pyenv update pyenv --version > pyenv 1.2.20pyenvで使うPythonのバージョンを設定
今回は3.7.4にしてますが、お好きなバージョンを指定してください
pyenv install 3.7.4 pyenv global 3.7.4 pyenv versions > * 3.7.4 (set by /Users/***/.pyenv/version)ターミナルの再起動
バージョンの確認python --version > Python 3.7.4 pip --version > pip 19.0.3 from /Users/***/.pyenv/versions/3.7.4/lib/python3.7/site-packages/pip (python 3.7)pipの設定
pip install --upgrade pip pip --version > pip 20.2 from /Users/***/.pyenv/versions/3.7.4/lib/python3.7/site-packages/pip (python 3.7)poetryのインストール
curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python
~/.zshrcにパスを追記
vim ~/.zshrcexport PATH="$HOME/.poetry/bin:$PATH"ターミナルを再起動
poetry --version > Poetry version 1.0.10 poetry self update > You are using the latest versionローカルのPythonに必要なパッケージを追加する
ここ必要に応じてパッケージを追加してください
飛ばしても大丈夫ですpip install pipenv pip install awscli pip install awslogsインストールしたパッケージの確認
バージョンは異なる可能性が高いですpip freeze > awscli==1.16.254 > awslogs==0.11.0 > boto3==1.9.244 > botocore==1.12.244 > certifi==2019.9.11 > colorama==0.4.1 > docutils==0.15.2 > jmespath==0.9.4 > pipenv==2018.11.26 > pyasn1==0.4.7 > python-dateutil==2.8.0 > PyYAML==5.1.2 > rsa==3.4.2 > s3transfer==0.2.1 > six==1.12.0 > termcolor==1.1.0 > urllib3==1.25.6 > virtualenv==16.7.5 > virtualenv-clone==0.5.3Poetryでプロジェクトの作成
新規でプロジェクトを作成する場合
poetry new my-package既存のプロジェクトをpoetryで管理する場合
(色々聞かれますが、そのままEnterで大丈夫です)poetry initパッケージを追加する
poetry add [パッケージ名]
pyproject.tomlからパッケージをインストール
poetry install
pyproject.tomlからパッケージを更新
poetry update以上となります。
お疲れ様でした。
- 投稿日:2020-08-02T13:46:59+09:00
Macのターミナルでファイルを検索する。
ファイルがディレクトリの何処にあるのかを知りたい。
たまにファイルがディレクトリの何処にあるのかを知りたい時があるのでファイルの場所を調べる方法です。
今回の環境。
この記事を書いた時点での
- macOSのバージョンはCatalina(10.15.6)でビルド番号は19G73。
- ターミナルのバーションは2.10(433)。
試しにVagrantfileが何処のディレクトリにあるのか調べてみる。
ファイルの場所を調べるコマンドはfindコマンドを使います。コマンドの書式例は
find [オプション][検索範囲][検索するファイルの種類を指定]
~を入れているのはホームディレクトリから下の階層で探すという事を示しています。
今回はVagrantfileという名前を探したいので-nameを使って名前を指定して検索します。
-type fはファイルだけに絞って検索します。今回はフォルダは検索の対象にはしません。sudo find ~ -name Vagrantfile -type f /Users/username/MyVagrant/MyCentOS/Vagrantfileこの環境ではVagrantfileという名前のファイルは/Users/username/MyVagrant/MyCentOS/Vagrantfileという
ディレクトリにあることが分かりました。
この様にfindコマンドを使えばファイルが何処のディレクトリにあるのかを知る事が出来ます。