ぼくの技術日誌

日誌って銘打っていますが、更新頻度が…

Node.js Mac開発環境メモ

Node.jsが生産性の高い言語だと聞いた僕は、すぐさま開発環境を構築した!
#っていうか、いつか構築した開発環境をアップデートした。。

nodebrewを使ってMacにNode.jsの開発環境を構築する。

Macにnode.jsをインストールする手順。 - Qiita

最近、WindowsでVS Codeを使っているので、MacでもVS Codeで開発ができるようにする。

Build Node.js Apps with VS Code

Visual Studio Codeでデバッグする

ターミナルからVisual Studio Codeを起動する方法【公式の方法】 - Qiita

iperf3をARM Linux向けにビルドして通信速度を測定する

はじめに

iperf3は通信速度を測定するオープンソースソフトウェアです。
ARM LinuxというかZynqのPetaLinuxで使ってみたので、作業手順を忘れないようにまとめておきます。
#手順自体はRaspberry PiやBeagleBoneなど他のARM Linuxでも変わらないはず。

続きを読む

MacにDjango開発環境を構築する

先日、Ubuntu 16.4.1へのDjango開発環境の構築手順を説明しました。
Macでも作業をできるようしたいと思い調べていると、
Python Django入門 (2) Mac編 - Qiita
という詳細な環境構築手順ほか、Djangoチュートリアルを公開いただいているのを見つけました。

上記内容に従ってインストールをしてみたところ、virtualenvを入れるところでエラーに遭遇しました。
環境構築自体は今回割愛しますが、解決方法をメモしておきます。


この記事の実行環境は下記のとおりです。


sudo pip install virtualenv virtualenvwrapperを実行するとsixをインストールしようとしてエラーが発生。
既に入っているsixに対してアンインストールを試みてエラーになっていそう。

yosuke-no-MBP:~ yosukekirihata$ sudo pip install virtualenv virtualenvwrapper
The directory '/Users/yosukekirihata/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/Users/yosukekirihata/Library/Caches/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting virtualenv
  Downloading virtualenv-15.0.3-py2.py3-none-any.whl (3.5MB)
    100% |████████████████████████████████| 3.5MB 351kB/s
Collecting virtualenvwrapper
  Downloading virtualenvwrapper-4.7.2.tar.gz (90kB)
    100% |████████████████████████████████| 92kB 4.5MB/s
Collecting virtualenv-clone (from virtualenvwrapper)
  Downloading virtualenv-clone-0.2.6.tar.gz
Collecting stevedore (from virtualenvwrapper)
  Downloading stevedore-1.18.0-py2.py3-none-any.whl
Collecting pbr>=1.6 (from stevedore->virtualenvwrapper)
  Downloading pbr-1.10.0-py2.py3-none-any.whl (96kB)
    100% |████████████████████████████████| 102kB 2.4MB/s
Collecting six>=1.9.0 (from stevedore->virtualenvwrapper)
  Downloading six-1.10.0-py2.py3-none-any.whl
Installing collected packages: virtualenv, virtualenv-clone, pbr, six, stevedore, virtualenvwrapper
  Running setup.py install for virtualenv-clone ... done
  Found existing installation: six 1.4.1
    DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.
    Uninstalling six-1.4.1:
Exception:
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/pip-9.0.0-py2.7.egg/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/Library/Python/2.7/site-packages/pip-9.0.0-py2.7.egg/pip/commands/install.py", line 342, in run
    prefix=options.prefix_path,
  File "/Library/Python/2.7/site-packages/pip-9.0.0-py2.7.egg/pip/req/req_set.py", line 778, in install
    requirement.uninstall(auto_confirm=True)
  File "/Library/Python/2.7/site-packages/pip-9.0.0-py2.7.egg/pip/req/req_install.py", line 752, in uninstall
    paths_to_remove.remove(auto_confirm)
  File "/Library/Python/2.7/site-packages/pip-9.0.0-py2.7.egg/pip/req/req_uninstall.py", line 115, in remove
    renames(path, new_path)
  File "/Library/Python/2.7/site-packages/pip-9.0.0-py2.7.egg/pip/utils/__init__.py", line 267, in renames
    shutil.move(old, new)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move
    copy2(src, real_dst)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2
    copystat(src, dst)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat
    os.chflags(dst, st.st_flags)
OSError: [Errno 1] Operation not permitted: '/tmp/pip-0piI38-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'
yosuke-no-MBP:~ yosukekirihata$ 

pip installの--ignore-installedオプションでsixのインストールを除外する

yosuke-no-MBP:~ yosukekirihata$ sudo pip install virtualenv virtualenvwrapper --ignore-installed six
The directory '/Users/yosukekirihata/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/Users/yosukekirihata/Library/Caches/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting virtualenv
  Downloading virtualenv-15.0.3-py2.py3-none-any.whl (3.5MB)
    100% |████████████████████████████████| 3.5MB 333kB/s
Collecting virtualenvwrapper
  Downloading virtualenvwrapper-4.7.2.tar.gz (90kB)
    100% |████████████████████████████████| 92kB 3.4MB/s
Collecting six
  Downloading six-1.10.0-py2.py3-none-any.whl
Collecting virtualenv-clone (from virtualenvwrapper)
  Downloading virtualenv-clone-0.2.6.tar.gz
Collecting stevedore (from virtualenvwrapper)
  Downloading stevedore-1.18.0-py2.py3-none-any.whl
Collecting pbr>=1.6 (from stevedore->virtualenvwrapper)
  Downloading pbr-1.10.0-py2.py3-none-any.whl (96kB)
    100% |████████████████████████████████| 102kB 2.2MB/s
Installing collected packages: virtualenv, virtualenv-clone, pbr, six, stevedore, virtualenvwrapper
  Running setup.py install for virtualenv-clone ... done
  Running setup.py install for virtualenvwrapper ... done
Successfully installed pbr-1.10.0 six-1.10.0 stevedore-1.18.0 virtualenv-15.0.3 virtualenv-clone-0.2.6 virtualenvwrapper-4.7.2
yosuke-no-MBP:~ yosukekirihata$ 

virtualenv virtualenvwrapperをインストールできた!

参考Webページ

エラー対処方法:pip installの--ignore-installedオプションでsixのインストールを除外
OS X EI Caption(10.11.1)でAWS CLIのインストールエラー - Qiita

HerokuとDjango(Python)、LINE Messaging APIでBotを作ってみる

はじめに

前回、HerokuにDjangoアプリをデプロイまでを書きました。
目的はLINE Messaging APIBotを作成することだったので、続いてLINE Botの作成手順をまとめておきます。
(ネットで見つけたサンプルを解析しながら作業をしました。先駆者のKosuke-Szk氏、itdadao氏、他皆様に感謝!)

また、LINE Messaging APIのアカウント作成・設定に関しては省略します。

続きを読む

HerokuにDjangoアプリをデプロイしてみた

はじめに

LINE Messaging APIを使ってBotを作ってみたいと思い、これまた以前から使ってみたかったHerokuにDjangoアプリをデプロイしてみました。
なお、Djangoは使うのも初めてで、選んだ理由は特にはありません。
基本的にUbuntu 14.04 で Django アプリケーションを Heroku にデプロイする手順 | dreamin'up4uに書いてくださった内容を試しただけです。
ただ、Herokuへアプリのgitリポジトリをpushするところでエラーが発生し、解決するのに少し苦労しました。

続きを読む