Программа была кросс-компилирована на моем компьютере (Linux x86) для целевой версии (aarch x64). Если я его выполню, то получу ошибку:
Код: Выделить всё
Nov 19, 2024 6:44:41 PM com.pi4j.util.NativeLibraryLoader load
SEVERE: Unable to load [libpi4j.so] using path: [/lib/raspberrypi/dynamic/libpi4j.so]
java.lang.UnsatisfiedLinkError: /tmp/libpi4j7269738509998508822.so: /tmp/libpi4j7269738509998508822.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)
Код: Выделить всё
public RT_PWM(int bus, int address) {
try {
System.out.println("Initializing RT_PWM on I2C bus " + bus + " with address 0x" +
Integer.toHexString(address));
I2CBus i2cBus = I2CFactory.getInstance(bus); // hier is the error
pwmDevice = i2cBus.getDevice(address);
но есть ли версия openjdk для 32-битной версии? Я также не нашел никакой информации от pi4j о том, что этот нагрудник работает только в 32-битной системе...
Подробнее здесь: https://stackoverflow.com/questions/792 ... h-mismatch