Macでpython3の環境構築14---OpenCV3のインストール2---
前回、
では、OpenCV3のインストールを試してみたものの、うまくいかなかったというお話でした。
ここからネットの情報を調べながら、色々と試行錯誤が始まりました。
その試行錯誤の過程で行なったことを記録していくわけですが、まずうまくいった操作を書いておきます。
うまくいった操作
結論からいうと、次の操作でうまくいきました。
hiroshi-no-MacBook-Air:~ hiroshi$ sudo sh -c "echo '/usr/local/opt/opencv3/lib/python3.4/site-packages' >> /usr/local/lib/python3.4/site-packages/opencv3.pth"
ターミナルを起動して上記コマンドを打つと、無事OpenCV3をインポートできるようになりました。
このコマンドの意味や効果もある程度調べてみましたが、そのあたり詳細は、また別の機会に書きたいと思います。
うまくいかなかった操作
- sys.pathに追加してみる sys.pathというところにpythonがモジュールを探す探索場所が書かれているという噂だったので、次のようにしてみましたが、できませんでした。もっともあまり理解せずに行なったので、そもそもが、正しいコマンドを実行していたのはわかりませんが。
hiroshi-no-MacBook-Air:~ hiroshi$ python3 #ターミナルを起動して「python3」と打ってreturn。すると以下3行が表示され>>>で次のコマンドの入力待ちになる。
Python 3.4.3 (default, Aug 11 2015, 08:57:25)
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys # 「import sys」と打ってreturn。
>>> sys.path.appned("/usr/local/lib/python3.4/site-packages") # sys.pathに文字列を追加する。
>>> print(sys.path) #sys.pathの中身を表示。無事追加されたのかを確認する。確かに一番最後に追加されています。
['', '/usr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python34.zip', '/usr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python3.4', '/usr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python3.4/plat-darwin', '/usr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python3.4/lib-dynload', '/usr/local/lib/python3.4/site-packages']
- まだ完全に理解できていないので、なぜこれでできなかったのかなど、詳細はここでは飛ばします。
- うまくいかなかったので元に戻しておきます。sys.path.appendで追加したものを削除するには、sys.path.removeらしいです。
>>> sys.path.remove("/usr/local/lib/python3.4/site-packages")
>>> print(sys.path)
['', '/usr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python34.zip', '/usr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python3.4', '/usr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python3.4/plat-darwin', '/usr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python3.4/lib-dynload'] #きちんと消えています。
- .bashrcへ追加してみる。 .bashrcへ追加してみるといいよ的な情報もあった気がするので、とりあえず以下のようなコマンドを打ってみました。
hiroshi-no-MacBook-Air:~ hiroshi$ echo "export PATH=\$PATH:/usr/local/Cellar/opencv3">>~/.bashrc
hiroshi-no-MacBook-Air:~ hiroshi$ source ~/.bashrc
- cv.pyのコピー ・ペースト これは、どこかの情報にあったわけではないですが、自分で考えて試してみた方法。
- どうやら実際は、PYTHONPATHというところに追加しなければいけませんが、詳細はここでは省略。
- /usr/local/Cellar/opencv/2.4.12/lib/python2.7/site-packagesの配下にあるcv.pyをコピーして、/usr/local/Cellar/opencv3/3.0.0/lib/python3.4/site-packagesに貼り付けるという操作です。
- /usr/local/Cellar/opencv/2.4.12/lib/python2.7/site-packagesフォルダの中身。cv.pyがあるので、これをコピー。
- /usr/local/Cellar/opencv3/3.0.0/lib/python3.4/site-packagesの中身。ここにコピーしたcv.pyを貼り付け。
- やってみたはいいもののうまくいかなかったのでその場合はもとに戻しましょう。貼り付けをしたcv.pyを削除しておきましょう。
大体試してみたのはこんなところでしょうか。
ところどころ、詳細は省略、として試してみたことだけざっと書きました。忘れないうちに。
飛ばしたところは、もう少し精査してまた書こうと思います。