Ubuntu22.04でArduino IDEを動かす

TechArduino, Japanese

Ubuntu22.04で、apt install arduinoでインストールすると、v1.8.19がインストールされた。

しかし普通に起動するとエラーが発生した。

$ arduino
Picked up JAVA_TOOL_OPTIONS: 
java.lang.UnsatisfiedLinkError: /usr/lib/x86_64-linux-gnu/liblistSerialsj.so.1.4.0: /usr/lib/x86_64-linux-gnu/liblistSerialsj.so.1.4.0: undefined symbol: sp_get_port_usb_vid_pid 
at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method) 
at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2445) 
at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2501) 
at java.base/java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2700) 
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2662) 
at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:830) 
at java.base/java.lang.System.loadLibrary(System.java:1873) 
at processing.app.Platform.<clinit>(Platform.java:143) 
at java.base/java.lang.Class.forName0(Native Method) 
at java.base/java.lang.Class.forName(Class.java:315) 
at processing.app.BaseNoGui.initPlatform(BaseNoGui.java:514) 
at processing.app.Base.<init>(Base.java:201) 
at processing.app.Base.main(Base.java:141) 

以下の対応をすることで解消した。

sudo apt-get -y install libserialport0 patchelf
sudo patchelf --add-needed /usr/lib/x86_64-linux-gnu/libserialport.so.0 /usr/lib/x86_64-linux-gnu/liblistSerialsj.so.1.4.0

参考:serverあれこれ: Ubuntu 22.04にArduino IDEをインストールする (serverarekore.blogspot.com)

IDE v2.0 も試してみたいけど、安定するかちょっと不安なので、Ubuntu上ではもう少し様子見。

ESP32 arduino core でのビルドのためには、以下も入れておく。

sudo pip install pyserial
sudo pip install esptool

ボード情報のインストールについては、こちら