tag | 39839c05ab26945a30466a8946b8bf12c84f62a8 | |
---|---|---|
tagger | Christofer Dutz <christofer.dutz@c-ware.de> | Thu Oct 24 15:06:34 2019 +0200 |
object | 7293b181d203d915542898932e59bba1a10372b7 |
[maven-release-plugin] copy for tag release/0.5.0-2
commit | 7293b181d203d915542898932e59bba1a10372b7 | [log] [tgz] |
---|---|---|
author | Christofer Dutz <christofer.dutz@c-ware.de> | Thu Oct 24 15:06:17 2019 +0200 |
committer | Christofer Dutz <christofer.dutz@c-ware.de> | Thu Oct 24 15:06:17 2019 +0200 |
tree | 3349d19e40cf020290b248a24e6e20803cbece27 | |
parent | 9c3685aa404b358680c7dbe2af67c978d7b5b506 [diff] |
[maven-release-plugin] prepare release release/0.5.0-2
Apache PLC4X is an effort to create a set of libraries for communicating with industrial grade programmable logic controllers (PLCs) in a uniform way. We are planning on shipping libraries for usage in:
PLC4X also integrates with other Apache projects, such as:
Depending on the programming language, the usage will differ, therefore please go to the Getting Started on the PLC4X website to look up the language of choice.
See the PLC4J user guide on the website to start using PLC4X in your Java application: https://plc4x.apache.org/plc4j/users/gettingstarted.html
Currently the project is configured to require the following software:
With this setup you will be able to build the Java part of PLC4X excluding the “proxy” drivers and servers. For a full build of PLC4X with all options the following has to be provided:
On a clean Ubuntu 18.04 the following software needs to be installed:
sudo apt install python-setuptools
If you‘re building a source-distribution and haven’t installed git yet, be sure to do so:
sudo get install git
In order to build the .Net version, please install the .Net package according to this guide:
https://dev.to/carlos487/installing-dotnet-core-in-ubuntu-1804-7lp
Make sure Homebrew
ist installed in order to update Bison
to a newer version (the version 2.3 installed per default is too old)
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Then update Bison
:
brew install bison brew link bison --force echo 'export PATH="/usr/local/opt/bison/bin:$PATH"' >> ~/.bash_profile
Install Python 2.7
:
brew install python@2
Be sure to re-open the command window or the changes will not apply.
If you're going to build the with-dotnet
profile you also need to install DotNet. Please download it from: https://dotnet.microsoft.com/download and run the installer.
Some tools need to be installed before being able to build on Windows:
with-cpp
, with-proxies
profiles)with-cpp
profiles)with-cpp
profiles)with-python
, with-proxies
profiles)with-dotnet
profiles)He have tested WinBuilds with the bundle of: http://win-builds.org/doku.php/download_and_installation_from_windows When running the installer, make sure to select the options:
WARNING: If you don't use the installer version of the distribution. The build will probably fail and it will be pretty impossible to see the problem. When manually executing the command, a popup will appear complaining about not being able to find some DLL. So if you are having these problems, please try using the installer instead of the manually unpackable archive.
For Bison, please download the Setup installer version from here: http://gnuwin32.sourceforge.net/packages/bison.htm (When using the zip version the bison.exe couldn‘t find some DLL files) It seems the official 2.4.1 version has issues when installed in a directory which’s path contains spaces. Please make sure you replace the exe with a patched version form here: http://marin.jb.free.fr/bison/bison-2.4.1-modified.zip (More infos on this issue here: https://sourceforge.net/p/gnuwin32/bugs/473/)
Please download the Flex compiler from here: http://gnuwin32.sourceforge.net/packages/flex.htm (Ideally download the binary zip distribution)
You can get Python from here: https://www.python.org/downloads/release/python-2716/
Make sure the bin
directories of containing the executables mingw32-make.exe
, bison.exe
and flex.exe
are all on your systems PATH
.
If you‘re building a source-distribution and haven’t installed git yet, be sure to do so.
You must have Java 8 installed on your system and connectivity to Maven Central (for downloading external third party dependencies). Maven will be automatically downloaded and installed by the maven wrapper mvnw
.
Build PLC4X Java jars and install them in your local maven repository
./mvnw install -P with-java # add -DskipTests to omit running the tests
You can now construct Java applications that use PLC4X. The PLC4X samples are a good place to start and are available inside the examples
directory.
If you want to also build the C++ libraries, this has to be enabled by activating
the with-cpp
profile
./mvnw -P with-cpp install # add -DskipTests to omit running the tests
Same applies for the C# .Net implementation with with-dotnet
profiles.
The Python implementation is currently in a somewhat unclean state and still needs refactoring. In order to be able to build the Python module, you currently need to activate both the: with-python
and with-proxies
profiles.
However both of these are in a pretty experimental state.
In order to build everything the following command should work:
./mvnw -P with-java,with-cpp,with-dotnet,with-python,with-proxies,with-sandbox install
Some parts of PLC4X, especially the raw socket support, require installed versions of libpcap/WinPcap.
You can download the Mac/Linux version from: http://www.tcpdump.org/ The windows version can be found here: https://sourceforge.net/projects/winpcap413-176/ (In order to read PCAPNG files we require a libpcap version 1.1.0 or greater. The default Windows version is 1.0. At this location is a patched version based on libpcap 1.7.4)
Same applies for Python with the with-python
and the C# .Net imeplemtation with with-dotnet
profiles. However both of these are in a pretty experimental state.
When building the C++ libraries we require an installed gcc
compiler. On Mac and Linux this is usually the case. On a minimal Ubuntu Linux system the following modules needed to be installed manually:
On Windows the required compiler is generally not available per default. The build is optimized for using a gcc-port called MinGW, available from http://win-builds.org/doku.php/download_and_installation_from_windows Make sure the bin
directory containing the executable mingw32-make.exe
is on your systems PATH
.
docker build -t plc4x . docker run -p 9200:9200 -p 9300:9300 --name plc4x plc4x
Join the PLC4X community by using one of the following channels. We'll be glad to help!
Subscribe to the following mailing lists:
See also: https://plc4x.apache.org/mailing-lists.html
Get the latest PLC4X news on Twitter: https://twitter.com/ApachePlc4x
There are multiple forms in which you can become involved with the PLC4X project.
These usually are, but are not limited to:
We are a very friendly bunch and don’t be afraid to step forward. If you'd like to contribute to PLC4X, have a look at our contribution guide!
Apache PLC4X is released under the Apache License Version 2.0.