[openrtm-staff:1036] 10/13の作業報告(河内)
河内のぶ
n.kawauchi @ aist.go.jp
2017年 10月 13日 (金) 19:11:37 JST
安藤様
河内です
本日の作業内容をお知らせします。
------------
■OpenRTM-aist修正(tags/RELEASE_1_1_2ソース)
・fedora26でのビルドエラー問題
・trunkの修正は、r2747にて、今回の問題のみを修正している。
・修正詳細は下記チケットの通り
http://redmine.openrtm.org/issues/3566
・branches/RELENG_1_1へはこの修正はマージされている。
・tags/RELEASE_1_1_2へは、この修正のみマージする。今回の作業経緯が
分かるように、チケットに記載した。
http://redmine.openrtm.org/issues/4262
■fedora用OpenRTM-aist1.1.2版パッケージ作成 ・・・完了
・openrtm.orgへアップロード済み(C++,Python)
・リポジトリデータベースも更新してあるが、インストールテストについては
稲葉さんにお願いする予定
★なぜ1.1.2版のfedora用パッケージをリリースしなかったのかについては
下記チケットの問題が解決できなかったため。解決した時点でリリースすべき
ところ、未対応のままになっていた。
http://redmine.openrtm.org/issues/3646
注意)1.1.2版のパッケージを作って気づいたのですが、C++は1.1.2版
リリースに向けて32bitのアーキテクチャをi686に変更していましたが、
Pythonはi386のままで、1.2.0版に向けてC++と合わせてi686へ修正して
います。
このため、rpmパッケージをアップロードするジョブがPythonのみ
1.1.2版と1.2.0版で設定変更が1か所必要です。
1.1.2版の対応は今回のみなので、別ジョブを定義せず修正で対応します。
修正内容)
http://openrtm.org:8080/view/01_Python/job/21_openrtm-python-linux-publish/configure
・「成果物をSCPリポジトリに公開」のところの設定(上から4番目)
・ソース:**/packages/*${DISTRIB_ARCH}.rpm
⇒・この設定のまま実行すると、1.1.2版の場合は64bitのrpmしか
アップロードされない。1.2.0版の場合はOK!
・1.1.2版の場合、次のようにすると32bit, 64bitの両方アップロードされる
ソース:**/packages/*${BASE_ARCH}.rpm
・アップロードを確認したら設定を元に戻しておく
▼Jenkinsジョブにてビルド(C++, Python)
・tagソースをビルドする
http://openrtm.org:8080/view/00_C++/job/03_openrtm-cxx-dist-tags/
http://openrtm.org:8080/view/01_Python/job/03_openrtm-python-build-tags/
・fedora用rpmパッケージをビルドする
・既存のジョブを使用するので、fedora以外のdebian, ubuntuは対象から
外す。パラメータ入力で、tagsビルドジョブを指定する。
http://openrtm.org:8080/view/00_C++/job/20_openrtm-cxx-build-linux-package/
http://openrtm.org:8080/view/01_Python/job/20_openrtm-python-build-linux-package/
・rpmパッケージをアップロード
・アップロード先がopenrtm.orgになっていることを確認してジョブを実行
・Pythonの方は上記に示したように設定を変更してからジョブを実行する
http://openrtm.org:8080/view/00_C++/job/21_openrtm-cxx-linux-publish/
http://openrtm.org:8080/view/01_Python/job/21_openrtm-python-linux-publish/
・リポジトリデータベース更新
http://openrtm.org:8080/view/00_C++/job/22_openrtm-cxx-rebuild-fedora-repodb/
▼インストールテストは稲葉さんにお願いする予定
http://openrtm.org:8080/view/00_C++/job/23_openrtm-cxx-linux-install-test/
http://openrtm.org:8080/view/01_Python/job/23_openrtm-python-linux-install-test/
■OpenRTM-aist-Pythonのrtcd_python.exeは、py2exeでの生成で動作を試す
・生成したexeでマネージャー起動 OK!
・Windows10 + Python2.7.13 + vc2010 + OpenRTM-aist 1.2.0で生成したものを
Windows7 + vc2013 + OpenRTM-aist 1.1.2 環境へ持って行き、
「rtcd -d」の起動をRTSystemEditorで確認できた
▼py2exe用のsetup.py
・bundle_filesの設定を1または2にしてexeは生成できるのだが起動できない
「rtcd.exeは動作を停止しました。問題が発生したため、プログラムが正しく
動作しなくなりました。」のエラーになる
・bundle_filesを3にすると、この指定が無い場合と同じ出力なので、これは
外してます
・生成したexeが他のdll, pydファイル等と同じディレクトリにあると分かり
づらいので、libの下に出力するように指定(TkCalibGUIと同様にした)
・setup.pyは以下となった
-----
from distutils.core import setup
import py2exe
option = {
"compressed" : 1,
"optimize" : 2,
}
setup(
options = { "py2exe" : option
},
console = [
{"script" : "rtcd.py" }
],
zipfile = "lib/rtcd.zip"
)
-----
・生成されるファイル構造は以下の通りで、不要のexeだけを外し、残りを
Windows7環境へ持って行き、「rtcd -d」での起動を確認した
-----
>tree /f dist
│ python27.dll
│ rtcd.exe
│ w9xpopen.exe ←これは不要
│
└─lib
api-ms-win-crt-convert-l1-1-0.dll
api-ms-win-crt-environment-l1-1-0.dll
api-ms-win-crt-heap-l1-1-0.dll
api-ms-win-crt-math-l1-1-0.dll
api-ms-win-crt-runtime-l1-1-0.dll
api-ms-win-crt-stdio-l1-1-0.dll
api-ms-win-crt-string-l1-1-0.dll
api-ms-win-crt-time-l1-1-0.dll
api-ms-win-crt-utility-l1-1-0.dll
bz2.pyd
CRYPT32.dll
omniORB422_vc14_rt.dll
omnithread40_vc14_rt.dll
pyexpat.pyd
rtcd.zip
select.pyd
unicodedata.pyd
VCRUNTIME140.dll
_ctypes.pyd
_hashlib.pyd
_omnipy.pyd
_socket.pyd
_ssl.pyd
-----
以上です。
---------------------------------------------------
河内 のぶ n.kawauchi @ aist.go.jp
産業技術総合研究所 ロボットイノベーション研究センター
ロボットソフトウエアプラットフォーム研究チーム
テクニカルスタッフ
More information about the openrtm-staff
mailing list