Apache PLC4X
https://plc4x.apache.org/
Apache PLC4X ============
Apache PLC4X旨在创建一组库,以统一的方式与工业级可编程逻辑控制器(PLC)进行通信。 我们正计划运送图书馆,以便用于:
1)Java
2)Scala
3)C / C ++
4)C#(。Net)
5)Python
除了提供与其他Apache项目的直接集成,例如:
1)Apache Calcite
2)Apache Camel
3)Apache Edgent
4)Apache Kafka-Connect
5)Apache Karaf
6)Apache NiFi
环境 -----------
目前,该项目配置为需要以下软件:
1)Java 8 JDK:用于运行Maven以及编译Java和Scala模块`JAVA_HOME配置为指向它。 2)libpcap / WinPcap用于Java中的原始套接字测试 3)(可选)Graphwiz:用于生成文档中的图形(http://www.graphviz.org/) 4)Git(即使在处理源代码分发时)
通过此设置,您将能够构建PLC4X的Java部分,不包括“代理”驱动程序和服务器。 对于包含所有选项的PLC4X的完整版本,必须提供以下内容:
Linux的 -----
在干净的Ubuntu 18.04上,需要安装以下软件:
sudo apt安装python-setuptools
如果您正在构建源代码分发但还没有安装git,请务必这样做:
sudo get install git
为了构建.Net版本,请根据本指南安装.Net软件包:
https://dev.to/carlos487/installing-dotnet-core-in-ubuntu-1804-7lp
苹果电脑 ---
确保安装了Homebrew
以便将Bison
更新为更新版本(默认情况下安装的版本2.3太旧)
/ usr / bin / ruby -e“ PATH”'>>〜/ .bash_profile
安装Python 2.7
:
brew install python @ 2
请务必重新打开命令窗口,否则更改将不适用。
如果你要构建with-dotnet
配置文件,你还需要安装DotNet。 请从以下网址下载:https://dotnet.microsoft.com/download并运行安装程序。
视窗 -------
在能够在Windows上构建之前,需要安装一些工具:
- WinBuilds(用于
with-cpp
,with-proxies
配置文件) - Bison(用于with-cpp
配置文件) - Flex(用于with-cpp
配置文件) - Python 2.7(用于with-python
,with-proxies
配置文件) - Dotnet(用于with-dotnet
配置文件)
他用以下软件包测试了WinBuilds:http://win-builds.org/doku.php/download_and_installation_from_windows 运行安装程序时,请确保选择以下选项: - 原生Windows - x86_64 不太确定哪些元素真正需要,最好只安装所有元素。
警告:如果您不使用分发版的安装程序版本。构建可能会失败,它会很漂亮 不可能看到问题。手动执行命令时,会出现一个弹出窗口,抱怨无法使用该命令 找到一些DLL。因此,如果您遇到这些问题,请尝试使用安装程序而不是手动解压缩 存档。
对于Bison,请从此处下载安装程序安装程序版本:http://gnuwin32.sourceforge.net/packages/bison.htm(使用zip版本时,bison.exe无法找到某些DLL文件) 当安装在路径包含空格的目录中时,似乎官方2.4.1版本存在问题。请确保在此处使用修补版本表格替换exe:http://marin.jb.free.fr/bison/bison-2.4.1-modified.zip (此问题有关此问题的更多信息:https:// sourceforge .net / p / gnuwin32 / bugs / 473 /)
请从这里下载Flex编译器:http://gnuwin32.sourceforge.net/packages/flex.htm(理想情况下下载二进制zip发行版)
你可以从这里获得Python:https://www.python.org/downloads/release/python-2716/
确保包含可执行文件mingw32-make.exe
,bison.exe
和flex.exe
的bin
目录都在你的系统PATH
上。
如果您正在构建源代码分发但还没有安装git,请务必这样做。
入门 ---------------
您必须在系统上安装Java 8并连接到Maven Central (用于下载外部第三方依赖项)。Maven将自动进行 由maven包装器mvnw
下载并安装。
构建PLC4X Java jar并将其安装在本地maven存储库中
./mvnw -P with-cpp install #add -DskipTests以省略运行测试
同样适用于带有with-dotnet
配置文件的C#.Net实现。
Python实现目前处于一种有点不干净的状态,仍然需要重构。 为了能够构建Python模块,您目前需要激活: with-python
和with-proxies
配置文件。
然而,这两者都处于相当实验状态。
为了构建所有内容,以下命令应该起作用:
&./mvnw -P with-java,with-cpp,with-dotnet,with-python,with-proxies,with-sandbox install
安装libpcap / WinPcap --------------------------
PLC4X的某些部分,特别是原始套接字支持,需要安装版本 libpcap / WinPcap。
您可以从http://www.tcpdump.org/下载Mac / Linux版本。 可以在此处找到Windows版本:https://sourceforge.net/projects/winpcap413-176/ (为了读取PCAPNG文件,我们需要libpcap 1.1.0或更高版本。默认值 Windows版本是1.0。在这个位置是基于libpcap 1.7.4的修补版本)
同样适用于带有with-python
的Python和带有with-dotnet
配置文件的C#.Net imeplemtation。 然而,这两者都处于相当实验状态。
构建C ++库 --------------------------
构建C ++库时,我们需要安装gcc
编译器。 在Mac和Linux上,通常就是这种情况。 在最小的Ubuntu Linux系统上,需要安装以下模块 手动:
- gcc - g ++ - 制作
在Windows上,默认情况下,所需的编译器通常不可用。 该构建针对使用名为MinGW的gcc-port进行了优化,可从中获得
http://win-builds.org/doku.php/download_and_installation_from_windows 确保包含可执行文件mingw32-make.exe
的bin
目录 在你的系统PATH
上。
</pre>