[openrtm-staff:958] 9/21の作業報告(河内)

河内 のぶ n-kawauchi @ openrtm.org
2017年 9月 21日 (木) 19:15:20 JST


安藤様

河内です

本日の作業内容をお知らせします。
-----------
■msiexec.exeの使用方法についての調査
・msiを展開してインストールされるディレクトリ構造でファイルを取り出す
・以前使っていたオプション指定では動かなくなったのでその調査
・河合さんにお願いしているドキュメント作業で使って頂くための作業

・以前は展開OKだったのに実行すると2203のエラーになる。msiに問題がある
 というだけで、具体的なメッセージはなし
・このエラーの情報は多いが、どれも解決できていない様子
・以前は下記の設定でログファイルも指定して実行できていた
-----
set LOGFILE=%CD%\msiexec.log
start /wait msiexec.exe /a xxx.msi targetdir=%CD% /qn  /li %LOGFILE%
-----

・結局、2203のエラーはtargetdirで指定している出力先がmsiと同じ
 ディレクトリを指定していることでロックされているため書き込みできない
 ことが原因だった。
https://stackoverflow.com/questions/21846381/error-2203-while-extracting-msi

・targetdirを掘ったら無事動いた。。。。
start /wait msiexec.exe /a xxx.msi targetdir=%CD%\output

■CMakeポリシー CMP0002の調査
・このポリシーは、最新のRTCBuilderテンプレートでも定義されています。
-----
cmake_minimum_required(VERSION 2.8)
cmake_policy(SET CMP0002 OLD)   ←★
-----

・このポリシーはCMake3.8.2以降では設定されておらず、上記のようにOLDで
 指定していると赤字で警告がでるようになりました。
The OLD behavior for policy CMP0002 will be removed from a future
version of CMake.

・次のように書き方を変えても警告は出ます
-----
if(POLICY CMP0002)
 cmake_policy(SET CMP0002 OLD)
endif()
-----

⇒Windows環境で、CMake3.7.2ではOKだが、3.9.1、3.9.3で警告がでることを
 確認。本日時点で、最新版は 3.9.3
 OpenRTM-aist 1.2.0版リリース時は、CMakeの最新版にリンクを貼って紹介
 する予定。

▼CMP0002が定義された経緯
・これはImageProcessingのソースを整備した際(2013年)に追加しました。
・ImageProcessingは20を超えるOpenCVサンプルRTCをまとめたものなので、
 "doxygen_doc"と"uninstall"が各RTCに存在するため、重複メッセージが
 出ないようにとこのポリシーを定義しました

・この経緯があったので、テンプレートにも追加して頂いたのだと思います

・それでもImageProcessing_opencv.slnの実行時に既に存在している旨の
 メッセージが出てしまうため、最終的にはユニークな名前になるように
 定義しています。${PROJECT_NAME}_doxygen_doc

・通常RTCを作成時は1つのソリューションに複数のプロジェクトを含める
 という作り方はしないので、CMP0002の定義をテンプレートから外しても
 影響はないのではと思えます

・CMP0002をコメントアウトしたソースをCMake2.8.12.2(Ubuntu14.04)と
 CMake3.9.3(Windows10)で確認したところ問題なくビルドできました。
・この対応でよければチケットを発行してテンプレートを修正して頂こうと
 考えています。

■OpenRTM-aist 1.2.0 msiの動作確認
・昨日Jenkinsジョブで生成し、下記へアップロードされているmsiを使う
http://staging.openrtm.org/pub/Windows/OpenRTM-aist/1.2.0/

◎このmsiは、vc2017の内部バージョンはvc141に修正されていますが、
 VCVerChangerツールはまだvc141に対応しておりません。

・msi実行時にインストール先を変更した時の、ProgramFiles以外への
 インストール動作は確認していなかったので、この機会に試す
 (Windows10 + vc2017環境)

★先日、坂本さんからOpenRTM-aistの1.1.2がインストールされている環境で
ディスクの残り容量が少ないため、1.2.0は別ドライブを指定して
インストールされたとのこと。その際、システム環境変数が1.1.2版が
インストールされていたProgram Filesの方を指していて現状と合わない
状況になったと伺いました。

この件の確認も兼ねて下記の手順を試しましたが今回は問題ありませんでした。


1)新規インストールで、インストール先をc:\test\OpenRTM-aistとする
・C++サンプルConsoleIn/ConsoleOutの接続動作 OK!
・Affine RTCのビルド・実行 OK! (OpenCVCamera,CameraViewer接続)
・OpenRTM-aistをアンインストール

2)1.1.2版⇒1.2.0版の順にインストールするが、1.2.0はインストール先
 を変更する
・1.1.2はデフォルト設定のままインストールするので、Program Files下に
 インストールされ、RTM_VC_VERSIONはvc12になる
・続けて1.2.0をインストールする際、vc2017を選択。カスタムインストール
 にてインストール先をc:\test\OpenRTM-aistと指定する。

・インストール後の確認
・システム環境変数のパスは全てc:\test\OpenRTM-aistとなっている
・C++サンプルConsoleIn/ConsoleOutの接続動作 OK!
・OpenCVCameraとCameraViewerの起動はOKだが、ビルドしたAffineは起動
 できず

・OpenCVCameraとCameraViewerの起動がOKなのは、これを起動するbatで、
 rtm_env.batを実行して環境変数をセットしているからです。
-----rtm_env.bat
@call set omni_root=%OMNI_ROOT%
@call set opencv_dir=%OpenCV_DIR%
@set PATH=%RTM_ROOT%bin\%RTM_VC_VERSION%\;%OMNI_ROOT%\bin\x86_win32\;%OpenCV_DIR%x86\%RTM_VC_VERSION%\bin\;%PATH%
@cd %RTM_VC_VERSION%
-----

・Affine RTCのビルドはOKだったが実行するとomniORBのdllが見つからず
 起動できない。
 ⇒・setコマンドで確認するとPATHの中のOMNI_ROOTが展開されていない
  ・OS再起動後はOMNI_ROOTが展開され、起動OK. 接続動作もOK.

・この環境をwindows_installer_test.batで確認すると以下となる

+++++++++++++
2017/09/21 18:51:52.78

[[check]] "C:\Program Files\OpenRTM-aist" directory
--- not exist!

[[check]] "C:\Program Files (x86)\OpenRTM-aist" directory
--- not exist!

*-*-*-*-*-*-* check system environment variables *-*-*-*-*-*-*
RTM_BASE=C:\test\OpenRTM-aist\
RTM_ROOT=C:\test\OpenRTM-aist\1.2.0\
RTM_VC_VERSION=vc141
RTM_JAVA_ROOT=C:\test\OpenRTM-aist\1.2.0\
OMNI_ROOT=C:\test\OpenRTM-aist\1.2.0\omniORB\4.2.2_vc141\
OpenCV_DIR=C:\test\OpenRTM-aist\1.2.0\OpenCV3.3\
OpenRTM_DIR=C:\test\OpenRTM-aist\1.2.0\cmake\

*-*-*-*-*-*-* check Path *-*-*-*-*-*-*
C:\test\OpenRTM-aist\1.2.0\bin\vc141\
C:\test\OpenRTM-aist\1.2.0\omniORB\4.2.2_vc141\bin\x86_win32\
C:\test\OpenRTM-aist\1.2.0\OpenCV3.3\x86\vc141\bin\

*-*-*-*-*-*-* check Python installed directory *-*-*-*-*-*-*
C:\Python27\ ----OpenRTM-aist-Python installed.
C:\Python27\ ----RTShell installed.

以上です。

-- 
------------------------------------------------------------------------
河内 のぶ        n-kawauchi @ openrtm.org


More information about the openrtm-staff mailing list