Pepper用Python 2.7 SDK(MAC)セットアップ方法

コレグラフを使用しなくてもPepperを動かせるPython 2.7 SDKセットアップ方法 MAC編

こんにちは。

AI coordinatorの清水秀樹です。

プログラムソースをバリバリ記述しながらPepperアプリ開発を実施したい人には、コレグラフは少し物足りない開発ツールです。

そんな方の為なのか、Pepperアプリ開発用のPython 2.7 SDKが準備されています。

ソフトバンクのサイトからダウンロードが可能です。

Windows用とLINUX用とMAC用とそれぞれで準備されています。

自分のOS環境にあったSDKをダウンロードして使用しましょう。

 

Python 2.7 SDKのダウンロードはこちらから

 

ただしMACでの開発環境整備には、System Integrity Protection (SIP)が少々邪魔をして、単純なインストールではプログラムを実行できません。

正確に言うとPATHが通りません。

 

その開発環境の整備に大変苦労したので、ここで紹介します。

また、初めてで良くわからない方向けとしても紹介しています。

これからMACでPepper用Python 2.7 SDK開発環境を整備したい方は是非参考にしてみてください。

 

Python 2.7 SDKをインストールしよう

上記ダウンロードサイトからPython 2.7 SDKをダウンロードしてインストールしましょう。

特に難しいことはないはずです。

Python以外にもJavaやC++も準備されています。

ここではPythonを選択してください。

 

ダウンロード後はファイルが圧縮されたままですので、解凍してください。

 

さて、ここからがターミナルを起動してコマンドで作業していくことになります。

まずはpipをインストールしましょう。

$ sudo easy_install pip

パスワードを聞かれたら管理者パスワードを入力してインストールしてください。

 

pipをインストールできたら、次はqibuildをインストールしましょう。

$ pip install qibuild

 

ここまでできたら、次は環境変数の設定です。

ターミナルを起動し、以下のコマンドを実行します。

$ export PYTHONPATH={PYTHONPATH}:/Users/pepper/Desktop/pynaoqi-python2.7-2.4.3.28-mac64
$ export DYLD_LIBRARY_PATH=${DYLD_LIBRARY_PATH}:/Users/pepper/Desktop/pynaoqi-python2.7-2.4.3.28-mac64

 

PATHを通すことで、Pepperを動かすモジュールが使えるようになるわけですが、

ここでハマりました。

 

いざ実行してみると、

$ python
>>> import ai
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named ai
>>> import qi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/pepper/Desktop/pynaoqi-python2.7-2.4.3.28-mac64/qi/__init__.py", line 66, in <module>
    from _qi import Application as _Application
ImportError: dlopen(/Users/pepper/Desktop/pynaoqi-python2.7-2.4.3.28-mac64/_qi.so, 2): Library not loaded: libboost_python.dylib
  Referenced from: /Users/pepper/Desktop/pynaoqi-python2.7-2.4.3.28-mac64/_qi.so
  Reason: unsafe use of relative rpath libboost_python.dylib in /Users/pepper/Desktop/pynaoqi-python2.7-2.4.3.28-mac64/_qi.so with restricted binary

なにやらモジュールがインポートできないとゴチャゴチャ叱られるではありませんか。

 

早速ググってみると原因が分かりました。
System Integrity Protecton (SIP)とかいうセキュリティ機能が働いており、ライブラリーが参照できないとのこと。

参考サイトはこちら

 

でもって、SIPを解除する方法もこちらのサイトで紹介されていたので、すかさず手順に則ってSIPを解除。

 

ここまで実施してから、ようやく下記コードでバーチャルペッパーに会話をさせることに成功しました。

>>> from naoqi import ALProxy
>>> tts = ALProxy("ALTextToSpeech", "localhost", 49292)
>>> tts.setLanguage("Japanese")
>>> tts.say("こんにちは、pepperです")

 

 

同じ悩みを持っている方は、参考にしてみてください。

 


その他のPepperアプリ記事はこちらから

あなたにオススメの記事

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

PAGE TOP