processing / processing/processing4

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

オープン
#799 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

bug
主要言語
Java
スター
494
フォーク
183
平均マージ
4時間 39分
マージ済み PR(30日)
3

説明

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

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

最小限のスケッチで Raspberry Pi のエクスポートを再現することから始め、生成された shell script とその lib ディレクトリを調べます。32 ビットおよび 64 ビットのエクスポートで Hardware I/O Library と libprocessing-io.so がどのように扱われるかを確認します。エクスポートされたスクリプトがネイティブライブラリを手動でコピーせずに実行できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java, raspberry-pi, shell
領域
build-system, embedded-iot
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。