繁体   English   中英

PI4J - 无法使用路径加载 [libpi4j.so]

[英]PI4J - Unable to load [libpi4j.so] using path

我在 MacOS 上使用 NetBeans 来开发使用 PI4J 的应用程序。 一切看起来都很好,但我收到下面的错误,说 PI4J 无法加载。 有谁知道如何解决这个问题?

abr 18, 2015 3:02:30 PM com.pi4j.util.NativeLibraryLoader load
SEVERE: Unable to load [libpi4j.so] using path: [/lib/libpi4j.so]
java.lang.UnsatisfiedLinkError: /private/var/folders/0x/6rph2scs0f544b7xwkfhzkcw0000gn/T/libpi4j3968879292977354112.so: dlopen(/private/var/folders/0x/6rph2scs0f544b7xwkfhzkcw0000gn/T/libpi4j3968879292977354112.so, 1): no suitable image found.  Did find:
    /private/var/folders/0x/6rph2scs0f544b7xwkfhzkcw0000gn/T/libpi4j3968879292977354112.so: unknown file type, first eight bytes: 0x7F 0x45 0x4C 0x46 0x01 0x01 0x01 0x00
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1822)
    at java.lang.Runtime.load0(Runtime.java:809)
    at java.lang.System.load(System.java:1086)
    at com.pi4j.util.NativeLibraryLoader.loadLibraryFromClasspath(NativeLibraryLoader.java:143)
    at com.pi4j.util.NativeLibraryLoader.load(NativeLibraryLoader.java:92)
    at com.pi4j.wiringpi.Gpio.<clinit>(Gpio.java:174)
    at com.pi4j.io.gpio.RaspiGpioProvider.<init>(RaspiGpioProvider.java:51)
    at com.pi4j.io.gpio.GpioFactory.getDefaultProvider(GpioFactory.java:106)
    at com.pi4j.io.gpio.impl.GpioControllerImpl.<init>(GpioControllerImpl.java:54)
    at com.pi4j.io.gpio.GpioFactory.getInstance(GpioFactory.java:89)
    at hellorasp.HelloRasp.main(HelloRasp.java:31)

Exception in thread "main" java.lang.UnsatisfiedLinkError: com.pi4j.wiringpi.Gpio.wiringPiSetup()I
    at com.pi4j.wiringpi.Gpio.wiringPiSetup(Native Method)
    at com.pi4j.io.gpio.RaspiGpioProvider.<init>(RaspiGpioProvider.java:51)
    at com.pi4j.io.gpio.GpioFactory.getDefaultProvider(GpioFactory.java:106)
    at com.pi4j.io.gpio.impl.GpioControllerImpl.<init>(GpioControllerImpl.java:54)
    at com.pi4j.io.gpio.GpioFactory.getInstance(GpioFactory.java:89)
    at hellorasp.HelloRasp.main(HelloRasp.java:31)

/lib/libpi4j.so文件无法正常工作,因为它仅适用于Raspberry Pi,而不是任何其他硬件。

只需将libpi4j.so复制到RPI上的项目lib文件夹即可

假设OP在覆盆子pi上运行他的代码,我也在运行代码上运行代码时出现了这个错误,该代码控制了截至2018年2月的伺服器,但在2018年7月产生了这个确切的错误。 我发现pi4j 1.2发行版的变化需要你手动安装接线库

所以我得到了确切的错误,按照这些说明操作,我的伺服器再次移动:

http://wiringpi.com/download-and-install/

sudo apt-get 删除wiringpi -y sudo apt-get --yes install git-core gcc make cd ~ git clone https://github.com/WiringPi/WiringPi --branch master --single-branchwiringpi cd ~/wiringpi须藤 ./build

这取自 pi4j 我遇到了这个问题,当我在终端中执行这些行时......一切都完美无缺

我在使用 Raspberry P4、java 11 和 pi4j v2 时遇到了同样的问题。 我解决了直接从树莓派下载 pigpio 库

sudo apt-get install pigpio

安装库后,jar 完美运行

我们是树莓派的初学者,我们想使用 pi4j 库。 示例程序编译但不运行:

严重:无法加载 [libpi4j] 使用路径:[/lib/raspberrypi/dynamic/libpi4j-armhf.so]

有谁知道如何解决这个问题?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM