processing / processing/processing4

Exporting a sketch using the Hardware I/O Library to Raspberry Pi results in broken shell script.

Open
#799 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Java
Stars
494
Forks
183
Avg merge
4h 39m
Merged PRs (30d)
3

Description

Created by: moritzmartingit

Description

When the exported script is executed it crashes and prints out the following error message:
"java.lang.UnsatisfiedLinkError: no processing-io in java.library.path:"

Expected Behavior

To get a working script after exporting a sketch using the Hardware I/O Library to Raspberry Pi.
The proposed change would be to include the corresponding "libprocessing-io.so" file automatically during the export.

Current Behavior

I can get the sketch running by manually copying the file "libprocessing-io.so" into the "lib" folder of the exported sketch.

Steps to Reproduce

The most simple sketch to reproduce the bug:
import processing.io.*;
GPIO.pinMode(4, GPIO.INPUT_PULLUP);

  1. Export the above sketch to Linux Raspberry Pi 64 or 32 bit.
  2. Execute the script in terminal.

Your Environment

  • Processing version: 4.3
  • Operating System and OS version (for running the exported script): Raspberry Pi 4, Raspberry Pi OS (64-bit) Published: 2023-10-10
  • Other information: Problem occurs when sketch is exported on the Raspberry Pi 4 itself or as well on a MacBook Pro M2.

Possible Causes / Solutions

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the Raspberry Pi export with the minimal sketch and inspect the generated shell script and its lib directory. Check how the Hardware I/O Library and libprocessing-io.so are handled for 32-bit and 64-bit exports; done means the exported script runs without manually copying the native library.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, raspberry-pi, shell
Domain
build-system, embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.