Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
openjdk issues on musl+clang
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
calebstein1
n00b
n00b


Joined: 29 Nov 2023
Posts: 1
Location: Bainbridge Island, WA

PostPosted: Wed Nov 29, 2023 10:29 pm    Post subject: openjdk issues on musl+clang Reply with quote

Hi all, I'm currently working on building a musl+clang system and it's all up and happening with a Plasma desktop and all that good stuff, but I'm having trouble at the moment getting my JetBrains IDEs working on the thing, since obviously the IDE's bundled Java isn't going to run on musl. Emerging virtual/jdk pulls in dev-java/openjdk-bin which seems to grab Alpine's openjdk, which makes sense because musl, but when I try to run RubyMine using that JDK, it fails with the following:
Code:

kotlinx.coroutines.JobCancellationException: Parent job is Cancelling; job=DispatchedCoroutine{Cancelling}@28cfd59
Caused by: java.lang.UnsatisfiedLinkError: /opt/openjdk-bin-17.0.8.1_p1/lib/libawt_xawt.so: Error relocating /opt/openjdk-bin-17.0.8.1_p1/lib/libawt_xawt.so: __strdup: symbol not found

I don't think it's necessarily a RubyMine problem since I've heard of people running it on Alpine without problems, so I'm going to go ahead and guess this has something to do with the lack of gcc on my system, but I'm no expert in the matter. My next thought was to just compile dev-java/openjdk straight on the musl+clang system, but that's proving difficult for its own reasons. I'm going to keep poking at that in the meantime, but for now, is this something anyone's come up against before? I can't be the only guy having Java troubles on musl+clang right?
Back to top
View user's profile Send private message
GDH-gentoo
Veteran
Veteran


Joined: 20 Jul 2019
Posts: 1537
Location: South America

PostPosted: Thu Nov 30, 2023 5:26 pm    Post subject: Re: openjdk issues on musl+clang Reply with quote

This is likely the problem:

calebstein1 wrote:
Code:
Error relocating /opt/openjdk-bin-17.0.8.1_p1/lib/libawt_xawt.so: __strdup: symbol not found

A shared library contains a reference to a symbol, __strdup (seemingly corresponding to a function name) that is not defined in musl or in Clang/LLVM libraries. To make things worse, this library seems to be part of the binary OpenJDK, so it's not like you can easily recompile it to fix that.

The output of ldd /opt/openjdk-bin-17.0.8.1_p1/lib/libawt_xawt.so might help with figuring out if the package expects a GCC or GNU libc-specific library to be present.
_________________
NeddySeagoon wrote:
I'm not a witch, I'm a retired electronics engineer :)
Ionen wrote:
As a packager I just don't want things to get messier with weird build systems and multiple toolchains requirements though :)
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21639

PostPosted: Thu Nov 30, 2023 5:52 pm    Post subject: Reply with quote

It looks like glibc provides this symbol.
Code:
$ nm --print-file-name -D --defined-only libc.so.6 | grep __strdup
libc.so.6:000000000009abf0 T __strdup@@GLIBC_2.2.5
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum