Agenda
- Install locally a Beremiz IDE software
Requirements
- laptop or workstation under Debian 11
Goal
This how to explains how to install a Beremiz IDE locally which you can use in automation projects.
Step 1: Install needed system packages
root@t580:~/# apt install build-essential mercurial autoconf bison flex cmake virtualenv python-lxml libgtk-3-dev libgl1-mesa-dev libglu1-mesa-dev curl chromium-browser inkscape
Step 2: Create a new Python virtual environment
ivan@t580:~$ virtualenv osie-env/
ivan@t580:~$ source osie-env/bin/activate
Step 3: Build needed packages for Beremiz
ivan@t580:~$ mkdir Beremiz
ivan@t580:~$ cd Beremiz
ivan@t580:~/Beremiz$ git clone https://github.com/beremiz/beremiz.git
# matiec for Beremiz
ivan@t580:~/Beremiz$ hg clone https://hg.beremiz.org/matiec
ivan@t580:~/Beremiz$ cd matiec
ivan@t580:~/Beremiz/matiec$ autoreconf -i
ivan@t580:~/Beremiz/matiec$ ./configure
ivan@t580:~/Beremiz/matiec$ make -j `nproc`
# modbus for Beremiz (optional)
ivan@t580:~/Beremiz$ hg clone https://hg.beremiz.org/Modbus/
ivan@t580:~/Beremiz$ cd Modbus
ivan@t580:~/Beremiz/Modbus$ make -j `nproc`
# compile open62541
ivan@t580:~/Beremiz$ git clone https://github.com/open62541/open62541.git
ivan@t580:~/Beremiz$ cd open62541/
ivan@t580:~/Beremiz/open62541$ git checkout v1.3.9
ivan@t580:~/Beremiz/open62541$ git submodule update --init --recursive
ivan@t580:~/Beremiz/open62541$ mkdir build && cd build
ivan@t580:~/Beremiz/open62541/build$ cmake -DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DUA_NAMESPACE_ZERO=REDUCED \
-DUA_ENABLE_AMALGAMATION=OFF \
-DUA_ENABLE_PUBSUB=ON ..
ivan@t580:~/Beremiz/open62541/build$ make -j `nproc`
ivan@t580:~/Beremiz/open62541/build$ sudo make install
Step 4: Install Beremiz IDE
ivan@t580:~$ source osie-env/bin/activate
(osie-env) ivan@t580:~$ cd osie-env/Beremiz
(osie-env) ivan@t580:~/osie-env/Beremiz/beremiz$ pip3 install -r requirements.txt
Step 5: Start Beremiz IDE
(osie-env) ivan@t580:~/osie-env/Beremiz/beremiz$ python Beremiz.py
Once Beremiz IDE is started you can see its default UI.
