ブログ

割とコンピュータよりの情報をお届けします。

2018年8月7日

open62541のビルドをVisual Studio Express 2017 for Windows Desktopで行う

OPC-UAの続き。python-opcuaは簡単なアプリでもPythonをインストールする必要があることに問題を感じてopen62541を使ってみようかと思った。

準備としてはCMakeとPythonとVisual Studioをインストール。出来ればgitもあるとよいが必須ではない。この時,Visual StudioはExpressでよい。

また,CMakeはインストーラでインストールしてもよいし,zipファイルを解凍したものでもよい。そして,PythonもWinPythonで構わない。それから,open62541をGitHubからダウンロードしてくる。

CMakeなどをzipファイルから展開していた場合には,コマンドプロンプトを開き以下を実行する。Pathは適宜調整してください。(事前にWinPythonプロンプトからpip install sixを実行しておく必要があるかもしれない)

set "PATH=C:\WinPython-64bit-2.7.13.1Zero\python-2.7.13.amd64;C:\cmake-3.12.0-win32-x86\bin;%PATH%"
"C:\Program Files (x86)\Microsoft Visual Studio\2017\WDExpress\VC\Auxiliary\Build\vcvars32.bat"

そのダウンロードしたファイルのフォルダ(zipファイルをダウンロードしたらその展開したフォルダ)へ移動して以下を実行しておく

mkdir build
cd build
cmake .. -G "Visual Studio 15 2017"

これでソリューションファイルが完成する。なお,出来上がったソリューションファイルを開いてソリューションのビルドを実行すればDebug用のビルドが完了するはず。

Release用のビルドは日本語環境では警告が表示される。標準では,警告をエラーにしてしまうように設定されているのでビルドに失敗する。open62541-objectプロジェクトのプロパティで「C/C++」「警告をエラーとして扱う」を「いいえ(/WX-)」とすれば一応ビルドはできるようになる。

出来上がったopen62541.libファイルはws2_32.libにも依存しているので使用時には注意。

基本的には参考を確認しながら使っていくが,標準のポート番号4840を気にする場合には,例えば以下のようにすれば,4841にポートが切り替わる。

//UA_ServerConfig *config = UA_ServerConfig_new_default();
UA_ServerConfig *config = UA_ServerConfig_new_minimal(4841, NULL);;

≫ 続きを読む

2018/08/07 コンピュータ   TakeMe