[openrtm-staff:1137] 11/2の作業報告(河内)

河内のぶ n.kawauchi @ aist.go.jp
2017年 11月 2日 (木) 19:10:44 JST


安藤様

河内です

本日の作業内容をお知らせします。
------------
■Jenkins VM環境(Windows10+vc2017)でvc2017の更新
・Python3.6+omniORBソースビルドが失敗しているための対応

⇒昨日、Python3.6.3 32bitを指定した場合はビルドが通ることを確認したが
 64bit版はNGだったので、調査継続

▼vc2017のインストールオプションを変更したので、C++のジョブを実行し
 影響がないことを確認する
・01_openrtm-cxx-dist-trunk
・10_openrtm-cxx-build-win32 ←目的のジョブ

・Windows環境でのビルドなので、まずはdistパッケージを生成しようとし
 エラー発生。原因はtrunkへのr3056の修正で、ヘッダーファイルの1つが
 Shift-JISだったためで、doxygenドキュメント生成でエラーになった。
・OpenRTM-aistのdoxygen_classref.confのエンコーディングがEUCになって
 いるため
・問題のヘッダーファイルをUTF-8 BOM付きに変換。make distはOK!

・目的のジョブ実行・・・全vc環境でエラーとなる(vc9,10,11,12,14,141)

⇒Windows環境で追加されたSharedMemory.idl関連のビルドが通るように
 整える作業を優先する

■SharedMemory.idl等が追加されたOpenRTM-aistソースをWindows上でビルド
できるように整える
・libRTCSkel.vcproj.yaml ・・・ローカル環境で修正

・上記でmake distしたソースコードをWindows環境でビルドすると、
 1)Python2.7しかインストールしていない環境ならビルドOK
    →Jenkins VM vc2013環境で手動ビルドでOKを確認

 2)Python2.7と3.6を両方インストールしている環境ではPythonが停止
   してしまい、makedeffile.pyで coil120_vc10d.def を生成できず、
   エラーで終了する

・Pythonが停止した際、下記が表示された
-----
Fatal Python error: Py_Initialize: unable to load the file system codec
  File "C:\Python27\Lib\encodings\__init__.py", line 123
    raise CodecRegistryError,\
                            ^
SyntaxError: invalid syntax

Current thread 0x0000000c (most recent call first):
-----

・Python2.7と3.6.3共存環境は、どちらもPythonのパスを通し、先に2.7の
パスがくるようにしていた
Path=C:\Python27\;C:\Python27\Scripts;C:\Python36_x64\Scripts\;C:\Python36_x64\;C:\Python36\Scripts\;C:\Python36\;

・上記をPython2.7のパスだけ残すように修正後ビルドしてみたが、同じ
 エラー状況になった
・続けてPython3.6.3を 32/64bit 両方アンインストール後にビルドしてみた
     ⇒ビルドOK!!!

・Jenkinsジョブでの確認
・vc9,10 : Python2.7 + 3.3.4  ・・・ビルドOK
・vc11,12,14 : Python2.7のみ  ・・・ビルドOK
・vc141 :Python2.7 + 3.6.3  ・・・ビルドNG

以上から、Python2.7と3.6.3をインストールしていると、途中で
Python3での実行してしまうためエラーになっている模様。
3.6.3のインストール方法・設定に問題あり?

以上です。

---------------------------------------------------
河内 のぶ  n.kawauchi @ aist.go.jp
産業技術総合研究所 ロボットイノベーション研究センター
ロボットソフトウエアプラットフォーム研究チーム
テクニカルスタッフ



More information about the openrtm-staff mailing list