CDP's fork of the open62541 OPC UA stack (https://github.com/open62541/open62541)

Sten edd05cf4f2 Update README.md 10 years ago
CMakeModules 61bf978379 check infrastructure 10 years ago
doc eca33ebd6d generate doxygen with cmake 10 years ago
examples f09ff6bc16 modified listen/accept-logic and renamed NL_tcp_listen to NL_tcp_accept 10 years ago
schema e6ba7e219f Merge remote-tracking branch 'origin/master' into connection_secureChannel 10 years ago
src a8af65555e change in ua_list 10 years ago
tests 7dccbc5dec fixed tests 10 years ago
tools eca33ebd6d generate doxygen with cmake 10 years ago
wrappers a29e7aba18 add missing include to expat to python wrapper 10 years ago
.gitignore 596f70813a Merge of branch namespace_generation 10 years ago
.travis.yml 4910fa77c1 simplify unit tests 10 years ago
CMakeLists.txt 4910fa77c1 simplify unit tests 10 years ago
LICENSE 9310d323c9 changed .gitignore again 10 years ago
README.md edd05cf4f2 Update README.md 10 years ago

README.md

open62541

An open-source communication stack implementation of OPC UA (OPC Unified Architecture) licensed under LGPL + static linking exception.

Ohloh Project Status Build Status Coverage Status Coverity Scan Build Status

Documentation

Documentation is generated from Doxygen annotations in the source code. The current version can be accessed at http://open62541.org/doxygen/.

Build Procedure

Ubuntu

Install build infrastructure

sudo apt-get install git build-essential gcc cmake python python-lxml
Notes on older systems e.g. 12.04 LTS
  • Manual install of check framework 0.9.10 (symptoms like "error: implicit declaration of function ‘ck_assert_ptr_eq’") bash wget http://security.ubuntu.com/ubuntu/pool/main/c/check/check_0.9.10-6ubuntu3_amd64.deb sudo dpkg -i check_0.9.10-6ubuntu3_amd64.deb or for i386 bash wget http://security.ubuntu.com/ubuntu/pool/main/c/check/check_0.9.10-6ubuntu3_i386.deb sudo dpkg -i check_0.9.10-6ubuntu3_386.deb
  • Manuall install of gcc-4.8 (symptoms like "error: initialization discards ‘const’ qualifier from pointer target type [-Werror]") bash sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update; sudo apt-get install gcc-4.8 sudo update-alternatives --remove-all gcc sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20 sudo update-alternatives --config gcc

Build

git clone https://github.com/acplt/open62541.git
cd open62541
mkdir build
cmake .. # generate the build scripts
# Optionally create an Eclipse project: cmake -G "Eclipse CDT4 - Unix Makefiles" .. 
make # creates executables in the build directory

# enable additional features
sudo apt-get install libexpat1-dev # for XML-encoding
sudo apt-get install liburcu-dev # for multithreading
sudo apt-get install check # for unit tests
sudo apt-get install graphviz doxygen # for documentation generation

ccmake .. # to select features for compilation. Use "cmake-gui .." for more eye-candy
make
make test # unit tests
make doc # generate documentation

Windows (Visual Studio)

Windows (MinGW)

  • Execute the same steps as in the Visual Studio case. But instead of installing Visual Studio, get and install MinGW:
  • The cmake command changes to Batchfile <path-to>\cmake.exe .. -G "MinGW Makefiles"
  • Then run (still in the build folder) Batchfile <path-to>\mingw32-make.exe

Get expat

  • Start MinGW Installation Manager mingw-get.exe
  • Choose all Packages, mark mingw32-expat and install

Get the check unit testing framework

  • Download check from http://check.sourceforge.net/
  • Open MinGW\msys\1.0\msys.bat bash cd check-code autoreconf --install ./configure make make install