Cannot use upstream libastyle
- Dominant language
- Java
- Stars
- 14.6k
- Forks
- 7k
- PR merge metrics
- No merged PRs in 30d
Description
I cannot use the upstream libastyle library of archlinux like this:
```
sudo cp /usr/lib/libastyle-2.05.1.so /usr/share/arduino/lib/libastylej.so
```
However I am wondering why as opensuse for example also had those patches:
https://build.opensuse.org/package/view_file/CrossToolchain:avr/Arduino/0004-libastylej-is-in-usr-lib.patch?expand=1
The error I get inside the IDE if i press `ctrl+t`:
```
Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: cc.arduino.packages.formatter.AStyleInterface.AStyleMain(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
at cc.arduino.packages.formatter.AStyleInterface.AStyleMain(Native Method)
at cc.arduino.packages.formatter.AStyle.run(AStyle.java:80)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
```
I also has similar issues with ctags or liblistserial. Could you please provide some help why those upstream binaries dont work and how to patch them?
Contributor guide
Research direction
Start with the Ctrl+T path in cc.arduino.packages.formatter.AStyleInterface and AStyle.java, then compare the Arch Linux libastyle installation with the linked openSUSE patch. Reproduce the UnsatisfiedLinkError and investigate whether the upstream libastyle, ctags, and liblistserial binaries expose the interfaces expected by the IDE.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- desktop, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100