LoginSignup
1
0

More than 5 years have passed since last update.

LinuxでNAO PythonSDKの環境構築

Last updated at Posted at 2018-11-10

NAOを用いた開発を行いたかったため,Choregrapheを使用しての開発環境を整えていたが,やはり物足りないため,PythonSDKを用いての開発を行います.

基本的には,このNAO Documentationの手順に従えばできるらしいが,ドキュメントだけではかなり詰まった箇所がいくつかあったため,自分の確認用の意味も込めてまとめておきます.

使用した環境

Ubuntu18.04
python2.7

必要なSDKのダウンロード

まず,必要なツール一式を揃えます.
SDKを用いての開発に必要なものは以下になります.

  • Choregraphe
    NAOやPepperを動かすための基本ツール.厳密に言うと必要ではないが,仮想環境での実行等を行えると便利なためインストールしておくことをオススメします.

  • PythonSDK

  • C++SDK
    今回はPythonSDKでの開発だが,PythonSDKのセットアップ時に出てくるエラーの対処にC++SDKの一部を使用する可能性がある(後述).該当のエラーが出て必要になった時にダウンロードでも大丈夫です.

以上のものは全てここのResourcesからダウンロードできます.(アカウント作成の必要有り.)

また,ダウロードしたtar.gzファイルはそれぞれ解凍して,任意のフォルダにまとめておきます.
自分はhome直下にSoftwareフォルダを作成しまとめておきました.

$ tar -zvxf pynaoqi-python2.7-2.1.4.13-linux64.tar.gz
$ tar -zvxf naoqi-sdk-2.1.4.13-linux64.tar.gz
$ mkdir ~/Software
$ mv pynaoqi-python2.7-2.1.4.13-linux64 /home/user_name/Software
$ mv naoqi-sdk-2.1.4.13-linux64 /home/user_name/Software

※user_nameは適宜変更してください.

Choregrapheのインストール

ダウンロードしてきたChoregrapheのrunファイルの実行権限を変更し,実行します.

cd ~/Downloads
chmod a+x choregraphe-suite-2.5.5.5-linux64-setup.run
./choregraphe-suite-2.5.5.5-linux64-setup.run

基本的には,手順に従えばインストールが完了します.
ライセンスキーはNAOに付属のものを入力します.持っていない場合は評価版でのインストールになります.

インストールが完了したら,終了ボタンを押すとChoregrapheが起動します.
これでインストール完了です。

  • 起動しない場合 自分が使用しているUuntu18.04では,ただインストールしただけではChoregrapheが起動しなかった.(Ubuntu16.04でも同様の症状があるらしい.) GUIをダブルクリックしても反応無しで、コマンドから起動しようとすると以下のようなエラーが出て起動できません。
/opt/Aldebaran Robotics/Choregraphe Suite 2.1/bin/choregraphe-bin: /opt/Aldebaran Robotics/Choregraphe Suite 2.1/bin/../lib/../lib/../lib/libz.so.1: version `ZLIB_1.2.9' not found (required by /usr/lib/x86_64-linux-gnu/libpng16.so.16)

どうやら,Choregraphe内に含まれているzlibを,OSのzlibへのリンクに変更すると大丈夫らしいです.

cd /opt/Aldebaran Robotics/Choregraphe\ Suite\ 2.1/lib/
sudo mv libz.so.1 libz.so.1.old
sudo ln -s /lib/x86_64-linux-gnu/libz.so.1

これで,GUIからもコマンドからも起動できるようになります.

PythonSDKのセットアップ

事前にpythonライブラリであるqibuildをインストールしておきます.

$ pip install qibuild

次に,~/.直下にある.bashrcファイルにPathを追加します.

まず,.bashrcファイルの編集画面を開きます.ここではvimを使っていますが,他のエディタでも問題ないです.

$ vim ~/.bashrc

開いたらどこでも良いので以下を追加する.

# PYTHONPATH
export PYTHONPATH=${PYTHONPATH}:/home/user_name/Software/pynaoqi-python2.7-2.1.4.13-linux64
export LD_LIBRARY_PATH="/home/user_name/Software/pynaoqi-python2.7-2.1.4.13-linux64:$LD_LIBRARY_PATH"

編集後,

$ source ~/.bashrc

これでPathが通りました.
動作するか確認を行います.

python
>> import naoqi

エラーが出なければセットアップ完了です.

エラーへの対処

基本的には,上記の手順通りに設定を行うとPythonSDKが使えるようになるのですが,自分のだとそれだけだとうまくいかなかったので,出て来たエラーとその対処法の紹介です.

  • 1つ目
>>> import naoqi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
    import qi
  File "/path/to/pynaoqi-python2.7-2.1.4.13-linux64/qi/__init__.py", line 72, in <module>
    from _qi import Application as _Application
ImportError: libqipython.so: cannot open shared object file: No such file or directory

import naoqiをした時に出て来たエラー.
読んでみると,libqipython.soをqi/__init__.pyを見つけられないというエラーのようです.
このエラーは,共有ライブラリのPathを通すと解決することができます.
~/.bashrcファイルに以下の文を追記しましょう.

export LD_LIBRARY_PATH="/home/user_name/Software/pynaoqi-python2.7-2.1.4.13-linux64:$LD_LIBRARY_PATH"

完了したら,

source ~/.bashrc

以上で解決できます.

  • 2つ目 ImportError: libboost_python.1.55.0.so: cannot open shared object file: No such file or directory

自分は,1つ目のエラーが解決した後にこのエラーが出て来ました.
これはよくわかりませんが,どうやらこの問題は、libboost-1.55.0の共有ライブラリをpynaoqi/以下に入れれば解決できるそうです.
これらはC++SDKに入っているので,C++SDKをダウンロードして展開し,以下を実行すると解決できます.

cp -a path/to/naoqicpp/lib/*.so*.1.55.0 /path/to/pynaoqi

また追加でエラー等発見し次第,適宜更新していきます.

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0