找不到 snap7 库 - linux

Kli*_*One 2 linux plc python-2.7 raspbian snap7

我在 Raspberry Pi 修订版 B 上运行 Rrapbian。

我按照此网页上的说明下载了模块 python-snap7:Snap7 Installation

我尝试了两次:一次使用 pip,另一次手动执行。但是,我通过setup.py build然后 安装了它setup.py install

如果我尝试创建客户端,则会出现以下错误:

Python 2.7.3 (default, Mar 18 2014, 05:13:23)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import snap7
>>> c = snap7.client.Client()
Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   File "/usr/local/lib/python2.7/dist-packages/snap7/client.py", line 29, in __init__
   self.library = load_library()
   File "/usr/local/lib/python2.7/dist-packages/snap7/common.py", line 48, in  load_library
    return Snap7Library(lib_location).cdll
   File "/usr/local/lib/python2.7/dist-packages/snap7/common.py", line 40, in __init__
    raise Snap7Exception(msg)
snap7.exceptions.Snap7Exception: can't find snap7 library. If installed, try running ldconfig
Run Code Online (Sandbox Code Playgroud)

收到此错误后,我执行了以下操作:

我在文件中添加了一些行,如下所示:

include /etc/ld.so.conf.d/*.conf
include /usr/local/lib/python2.7/dist-packages/snap7-full-1.2.1/
include /usr/local/lib/python2.7/dist-packages/snap7-full-1.2.1/release/Linux/ARMHF/Raspberry/
include /usr/local/lib/python2.7/dist-packages/snap7-full-1.2.1/src/lib/
include /usr/local/lib/python2.7/dist-packages/snap7-python/build/lib.linux-armv6l-2.7/snap7/
include /usr/local/lib/python2.7/dist-packages/snap7-python/
Run Code Online (Sandbox Code Playgroud)

然后我发出了sudo ldconfig更新缓存文件的命令/etc/ld.so.cache,但错误仍然存​​在:(

  1. include每行的格式进行说明是否正确?
  2. 是否有任何我没有看到的严重错误?
  3. 我需要包含哪个库?我只是想到了这里提供的那些:SourceForge Link。我选择了第一个 .tar.gz 包。

抱歉我的英语,并提前致谢!

xbo*_*omx 5

看起来你没有安装 SNAP7 库(它不包含在 python-snap7 中)

要在带有 python-snap7 包装器的 Raspberry Pi 上使用 snap7 库,您需要执行以下步骤:

  1. 下载 SNAP7 库,例如:snap7-full-1.2.1
    在 Pi 命令行中:
    wget http://sourceforge.net/projects/snap7/files/1.2.1/snap7-full-1.2.1.tar.gz/download


  2. 在 Pi 命令行中解压下载的文件:
    tar -zxvf snap7-full-1.2.1.tar.gz

  3. 在 Pi 命令行中为树莓编译库(arm_v6_linux.mk用于 RPI 1。对于 RPI 2 使用arm_v7_linux.mk

    cd snap7-full-1.2.1/build/unix && sudo make -f arm_v6_linux.mk all

  4. 将编译后的库复制到 Pi 命令行中的lib目录

    sudo cp ../bin/arm_v6-linux/libsnap7.so /usr/lib/libsnap7.so
    sudo cp ../bin/arm_v6-linux/libsnap7.so /usr/local/lib/libsnap7.so

  5. (可选)如果
    在 Pi 命令行中没有安装 python pip :
    sudo apt-get install python-pip


  6. 在 Pi 命令行中为 SNAP7 lib 安装 python 包装器:
    sudo pip install python-snap7