Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
How to install java on arm musl?
View unanswered posts
View posts from last 24 hours

Goto page 1, 2, 3  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo on ARM
View previous topic :: View next topic  
Author Message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Fri Jul 19, 2024 3:07 pm    Post subject: How to install java on arm musl? Reply with quote

Hi.

I'm trying to install a java vm (any) on an arm musl Gentoo system. I get circular dependency errors; the package depends on itself. It seems that system-bootstrap flag can't be disabled.

Is there a guide how to install java on arm musl?

Thanks.
Back to top
View user's profile Send private message
grknight
Retired Dev
Retired Dev


Joined: 20 Feb 2015
Posts: 1926

PostPosted: Fri Jul 19, 2024 3:17 pm    Post subject: Reply with quote

M95D wrote:
It seems that system-bootstrap flag can't be disabled.

Of course it can be disabled. However, since it is forced on by profile, it goes in a special place; namely /etc/portage/profile/package.use.force

It is notable that an arm64 musl profile already does this.
If this is 32-bit arm, then changing this flag may not work.

Can you show the REAL problem and the output?
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Fri Jul 19, 2024 5:40 pm    Post subject: Reply with quote

Sure.
Code:

TkB ~ # emerge -atv1 openjdk

Local copy of remote index is up-to-date and will be used.

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
Dependency resolution took 7.84 s (backtrack: 1/20).



[ebuild  N    *] dev-java/openjdk-21.0.4_p7:21::gentoo  USE="alsa jbootstrap (system-bootstrap) (-big-endian) -cups -debug -doc -examples -headless-awt (-javafx) -lto (-selinux) -source -systemtap" 109870 KiB

Total: 1 package (1 new), Size of downloads: 109870 KiB

 * Error: circular dependencies:

(dev-java/openjdk-21.0.4_p7:21/21::gentoo, ebuild scheduled for merge) depends on
 (dev-java/openjdk-21.0.4_p7:21/21::gentoo, ebuild scheduled for merge) (buildtime)

 * Note that circular dependencies can often be avoided by temporarily
 * disabling USE flags that trigger optional dependencies.
TkB ~ # USE="-alsa -system-bootstrap" emerge -atv1 openjdk

Local copy of remote index is up-to-date and will be used.

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
Dependency resolution took 7.49 s (backtrack: 1/20).



[ebuild  N    *] dev-java/openjdk-21.0.4_p7:21::gentoo  USE="jbootstrap (system-bootstrap) -alsa (-big-endian) -cups -debug -doc -examples -headless-awt (-javafx) -lto (-selinux) -source -systemtap" 109870 KiB

Total: 1 package (1 new), Size of downloads: 109870 KiB

 * Error: circular dependencies:

(dev-java/openjdk-21.0.4_p7:21/21::gentoo, ebuild scheduled for merge) depends on
 (dev-java/openjdk-21.0.4_p7:21/21::gentoo, ebuild scheduled for merge) (buildtime)

 * Note that circular dependencies can often be avoided by temporarily
 * disabling USE flags that trigger optional dependencies.
TkB ~ #


The system is armv7 (Cortex A17).
I'll try the package.use.force then...

LE:
Nope. Doesn't work.
Code:

TkB ~ # USE="-alsa" emerge -atv1 openjdk

Local copy of remote index is up-to-date and will be used.

These are the packages that would be merged, in reverse order:

Calculating dependencies |

!!! Problem resolving dependencies for dev-java/openjdk
... done!
Dependency resolution took 3.86 s (backtrack: 0/20).


!!! The ebuild selected to satisfy "openjdk" has unmet requirements.
- dev-java/openjdk-21.0.4_p7::gentoo USE="jbootstrap -alsa (-big-endian) -cups -debug -doc -examples -headless-awt (-javafx) -lto (-selinux) -source -system-bootstrap -systemtap"

  The following REQUIRED_USE flag constraints are unsatisfied:
    !system-bootstrap? ( any-of ( ppc64 x86 ) )

  The above constraints are a subset of the following complete expression:
    javafx? ( alsa !headless-awt ) !system-bootstrap? ( jbootstrap ) !system-bootstrap? ( any-of ( ppc64 x86 ) )

TkB ~ #


I have a x86-64 Gentoo system with working crossdev for this target, including armv7-...-musleabihf-emerge, if it helps.
Back to top
View user's profile Send private message
logrusx
Advocate
Advocate


Joined: 22 Feb 2018
Posts: 2450

PostPosted: Fri Jul 19, 2024 5:58 pm    Post subject: Reply with quote

Openjdk-21 is not keyworded on arm. You're doing more than you say, what exactly is it?

Have you put
Code:
dev-java/openjdk **

in package.accept_keywords?

Best Regards,
Georgi
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Fri Jul 19, 2024 6:57 pm    Post subject: Reply with quote

Yes, I did. Before asking for help here, I tried various solutions from google, including https://gitlab.com/stikonas/gentoo-bootstrap and --autounmask.
Should I remove that?
Back to top
View user's profile Send private message
logrusx
Advocate
Advocate


Joined: 22 Feb 2018
Posts: 2450

PostPosted: Fri Jul 19, 2024 7:26 pm    Post subject: Reply with quote

M95D wrote:
Yes, I did. Before asking for help here, I tried various solutions from google, including https://gitlab.com/stikonas/gentoo-bootstrap and --autounmask.
Should I remove that?


So you have no version preference?

Before we continue I need some more context. Please explain your situation and why you want to run Java on this processor.

p.s. none of the jdk's are stable for arm and there certainly is a reason for that. Why did you go for 21? There's a testing 17.

Best Regards,
Georgi
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Fri Jul 19, 2024 7:33 pm    Post subject: Reply with quote

I removed everything related to java from package.accept_keywords and I got as far as this:
Code:

TkB ~ # USE="-alsa" emerge -atv1 openjdk

Local copy of remote index is up-to-date and will be used.

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
Dependency resolution took 5.68 s (backtrack: 0/20).

[ebuild  N     ] dev-java/openjdk-17.0.12_p7:17::gentoo  USE="jbootstrap -alsa (-big-endian) -cups -debug -doc -examples -headless-awt (-javafx) -lto (-selinux) -source -system-bootstrap -systemtap" 0 KiB

Total: 1 package (1 new), Size of downloads: 0 KiB

Would you like to merge these packages? [Yes/No] y
!!!
!!! parallel-fetching requires the distlocks feature enabled
!!! you have it disabled, thus parallel-fetching is being disabled
!!!

>>> Verifying ebuild manifests

>>> Running pre-merge checks for dev-java/openjdk-17.0.12_p7
 * Checking for at least 4288 MiB disk space at "/var/tmp/portage/dev-java/openjdk-17.0.12_p7/temp" ...                                                                                                                                                                                                              [ ok ]

>>> Emerging (1 of 1) dev-java/openjdk-17.0.12_p7::gentoo
 * openjdk-17.0.12_p7.tar.gz BLAKE2B SHA512 size ;-) ...                                                                                                                                                                                                                                                             [ ok ]
 * Checking for at least 4288 MiB disk space at "/var/tmp/portage/dev-java/openjdk-17.0.12_p7/temp" ...                                                                                                                                                                                                              [ ok ]
>>> Unpacking source...
>>> Unpacking openjdk-17.0.12_p7.tar.gz to /var/tmp/portage/dev-java/openjdk-17.0.12_p7/work
>>> Source unpacked in /var/tmp/portage/dev-java/openjdk-17.0.12_p7/work
>>> Preparing source in /var/tmp/portage/dev-java/openjdk-17.0.12_p7/work/jdk17u-jdk-17.0.12-ga ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/dev-java/openjdk-17.0.12_p7/work/jdk17u-jdk-17.0.12-ga ...
 * Please use append-cppflags for preprocessor flags
 * econf: updating jdk17u-jdk-17.0.12-ga/make/autoconf/build-aux/config.guess with /usr/share/gnuconfig/config.guess
 * econf: updating jdk17u-jdk-17.0.12-ga/make/autoconf/build-aux/config.sub with /usr/share/gnuconfig/config.sub
./configure --prefix=/usr --build=armv7a-unknown-linux-musleabihf --host=armv7a-unknown-linux-musleabihf --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --datarootdir=/usr/share --docdir=/usr/share/doc/openjdk-17.0.12_p7 --htmldir=/usr/share/doc/openjdk-17.0.12_p7/html --with-sysroot=/ --libdir=/usr/lib --disable-ccache --disable-precompiled-headers --disable-warnings-as-errors --enable-full-docs=no --with-boot-jdk=/var/tmp/portage/dev-java/openjdk-17.0.12_p7/work/openjdk-bootstrap- --with-extra-cflags=-O2 -pipe -fomit-frame-pointer -march=armv7ve+neon-vfpv3 -mcpu=cortex-a17 -mfpu=neon-vfpv3 -mfloat-abi=hard -D_LARGEFILE64_SOURCE --with-extra-cxxflags=-O2 -pipe -fomit-frame-pointer -march=armv7ve+neon-vfpv3 -mcpu=cortex-a17 -mfpu=neon-vfpv3 -mfloat-abi=hard -D_LARGEFILE64_SOURCE --with-extra-ldflags=-Wl,-O1 -Wl,--as-needed --with-freetype=system --with-giflib=system --with-harfbuzz=system --with-lcms=system --with-libjpeg=system --with-libpng=system --with-native-debug-symbols=none --with-vendor-name=Gentoo --with-vendor-url=https://gentoo.org --with-vendor-bug-url=https://bugs.gentoo.org --with-vendor-vm-bug-url=https://bugs.openjdk.java.net --with-vendor-version-string=17.0.12_p7 --with-version-pre= --with-version-string=17.0.12 --with-version-build=7 --with-zlib=system --enable-jvm-feature-dtrace=no --enable-headless-only=no
Warning: You are using legacy autoconf cross-compilation flags.
It is recommended that you use --openjdk-target instead.

configure: Configuration created at Fri Jul 19 19:23:46 UTC 2024.
checking for basename... /usr/bin/basename
checking for dirname... /usr/bin/dirname
checking for file... /usr/bin/file
checking for ldd... /usr/bin/ldd
checking for echo... echo [builtin]
[...]
checking for version string... 17.0.12+7
configure: error: The path of BOOT_JDK_ARG, which resolves as "/var/tmp/portage/dev-java/openjdk-17.0.12_p7/work/openjdk-bootstrap-", is not found.
configure exiting with result code 1


That dir doens't contain any openjdk-bootstrap:
Code:

/var/tmp/portage/dev-java/openjdk-17.0.12_p7/work:
total 0
drwx------ 1 portage portage  42 2024-07-19 19:09:12.767531401 +0000 .
drwx------ 1 portage portage 176 2024-07-19 19:09:47.587767319 +0000 ..
drwxr-xr-x 1 portage portage 344 2024-07-19 19:09:47.377765900 +0000 jdk17u-jdk-17.0.12-ga
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Fri Jul 19, 2024 7:41 pm    Post subject: Reply with quote

logrusx wrote:
M95D wrote:
Yes, I did. Before asking for help here, I tried various solutions from google, including https://gitlab.com/stikonas/gentoo-bootstrap and --autounmask.
Should I remove that?


So you have no version preference?

Before we continue I need some more context. Please explain your situation and why you want to run Java on this processor.

p.s. none of the jdk's are stable for arm and there certainly is a reason for that. Why did you go for 21? There's a testing 17.

Best Regards,
Georgi

No, I have no version preference. I want to run JDownloader (headless). That's a download manager. I use it for big, long and slow downloads from various sites that limit bandwith. I don't want to keep my power-hungry desktop online for hours or days at a time, doing nothing but a 50 KB/s web download.
I can't remember why the first emerge didn't work - I tried that several months ago, then I abandoned it.
I tried it again this week and I got in this situation by trying various solutions, including unmasking everything. I didn't think that a newer version could have worse musl support than an older one, or that emerge can't find the version that has all dependecies satisfied, if I give as argument just the package name, without version.
Back to top
View user's profile Send private message
logrusx
Advocate
Advocate


Joined: 22 Feb 2018
Posts: 2450

PostPosted: Fri Jul 19, 2024 8:37 pm    Post subject: Reply with quote

Of all the download managers on earth, why one written in java? :)

Put this somewhere in your package.accept_keywords:

Code:
dev-java/openjdk-bin ~arm


and then emerge openjdk-bin. You don't need to build it.

If you insist on building it, then

Code:
dev-java/openjdk ~arm
dev-java/openjdk-bin ~arm


You don't need to bootstrap if from scratch. Emerge it openjdk, it'll emerge openjdk-bin to bootstrap it, then unmerge the bin version.

But ultimately I would suggest looking for another download manager.

p.s. I also tried emerging java with -system-bootstrap. It failed not finding a bootstrap java:

Code:
checking for version string... 17.0.11+9
configure: error: The path of BOOT_JDK_ARG, which resolves as "/var/tmp/portage/dev-java/openjdk-17.0.11_p9/work/openjdk-bootstrap-", is not found.
configure exiting with result code 1


so you're not likely building it that way.

Best Regards,
Georgi
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Sat Jul 20, 2024 6:33 am    Post subject: Reply with quote

I already have ~arm in the make.conf ACCEPT_KEYWORDS.

Code:

!!! All ebuilds that could satisfy "openjdk-bin" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-java/openjdk-bin-21.0.3_p9::gentoo (masked by: package.mask, missing keyword)
/var/db/repos/gentoo/profiles/features/musl/package.mask:
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2024-01-20)
# Binary package linked to glibc (rolling mask, use for all such binpkgs)

- dev-java/openjdk-bin-17.0.11_p9::gentoo (masked by: package.mask)
- dev-java/openjdk-bin-11.0.23_p9::gentoo (masked by: package.mask)
- dev-java/openjdk-bin-8.412_p08::gentoo (masked by: package.mask)
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 523

PostPosted: Sat Jul 20, 2024 11:31 am    Post subject: Reply with quote

logrusx wrote:

p.s. none of the jdk's are stable for arm and there certainly is a reason for that. Why did you go for 21? There's a testing 17.


Is that a Gentoo oddity? I use OpenJDK Java 17 on my Raspberry Pi's -- all versions -- with no problems at all.

Or is it just the MUSL version that is problematic?

BR, Lars.
Back to top
View user's profile Send private message
logrusx
Advocate
Advocate


Joined: 22 Feb 2018
Posts: 2450

PostPosted: Sat Jul 20, 2024 3:26 pm    Post subject: Reply with quote

lars_the_bear wrote:
logrusx wrote:

p.s. none of the jdk's are stable for arm and there certainly is a reason for that. Why did you go for 21? There's a testing 17.


Is that a Gentoo oddity? I use OpenJDK Java 17 on my Raspberry Pi's -- all versions -- with no problems at all.

Or is it just the MUSL version that is problematic?

BR, Lars.


I don't think is' musl specific: https://packages.gentoo.org/packages/dev-java/openjdk

There may certainly be specifics, but they are in the profile, here you see it at package level.

It's just that the developers do not feel confident it's stable. Be it there aren't enough people to test it, be it for some particular reason.

Best Regards,
Georgi
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 523

PostPosted: Sat Jul 20, 2024 4:34 pm    Post subject: Reply with quote

logrusx wrote:
It's just that the developers do not feel confident it's stable. Be it there aren't enough people to test it, be it for some particular reason.


Fair enough. OpenJDK has been in the ARM Debian repo for decades, and it's always been fine for me. I'd be surprised if there were a really fundamental problem with it. Of course, I appreciate that I'm only a sample of size one.

BR, Lars.
Back to top
View user's profile Send private message
logrusx
Advocate
Advocate


Joined: 22 Feb 2018
Posts: 2450

PostPosted: Sat Jul 20, 2024 4:40 pm    Post subject: Reply with quote

lars_the_bear wrote:
logrusx wrote:
It's just that the developers do not feel confident it's stable. Be it there aren't enough people to test it, be it for some particular reason.


Fair enough. OpenJDK has been in the ARM Debian repo for decades, and it's always been fine for me. I'd be surprised if there were a really fundamental problem with it. Of course, I appreciate that I'm only a sample of size one.

BR, Lars.


Well, I guess the it's the former - not enough arm + java users among the developers. They know it runs and it's there in other distributions, but they personally maybe only verified it runs or something like that.

Testing packages for Gentoo are pretty stable these days. Actually running full testing system is quite possible and painless, compared to the early days and even only a decade ago. I used to run testing Gentoo around 2010 and it was a pain. Eventually I got tired of fixing breakages and I abandoned it, I returned in 2018 and never thought of running testing again. However in recent years it has become evident it's not that bad anymore, only occasional problems which are not that hard to solve at all.

Best Regards,
Georgi
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Sun Jul 21, 2024 8:32 am    Post subject: Reply with quote

So, how do I install it?
- crossdev emerge?
- an official binpkg for musl available soon?
- install alpine package? How?

Thank you.


Last edited by M95D on Sun Jul 21, 2024 8:38 am; edited 1 time in total
Back to top
View user's profile Send private message
logrusx
Advocate
Advocate


Joined: 22 Feb 2018
Posts: 2450

PostPosted: Sun Jul 21, 2024 8:37 am    Post subject: Reply with quote

M95D wrote:
So, how do I install it?
- crossdev emerge?
- an official binpkg available soon?
- install alpine package? How?

Thank you.


https://packages.gentoo.org/packages/dev-java/openjdk-bin

Does that answer your question?

Best Regards,
Georgi
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Sun Jul 21, 2024 8:38 am    Post subject: Reply with quote

Did you read this?
M95D wrote:

Code:

!!! All ebuilds that could satisfy "openjdk-bin" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-java/openjdk-bin-21.0.3_p9::gentoo (masked by: package.mask, missing keyword)
/var/db/repos/gentoo/profiles/features/musl/package.mask:
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2024-01-20)
# Binary package linked to glibc (rolling mask, use for all such binpkgs)

- dev-java/openjdk-bin-17.0.11_p9::gentoo (masked by: package.mask)
- dev-java/openjdk-bin-11.0.23_p9::gentoo (masked by: package.mask)
- dev-java/openjdk-bin-8.412_p08::gentoo (masked by: package.mask)
Back to top
View user's profile Send private message
logrusx
Advocate
Advocate


Joined: 22 Feb 2018
Posts: 2450

PostPosted: Sun Jul 21, 2024 8:56 am    Post subject: Reply with quote

M95D wrote:
Did you read this?
M95D wrote:

Code:

!!! All ebuilds that could satisfy "openjdk-bin" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-java/openjdk-bin-21.0.3_p9::gentoo (masked by: package.mask, missing keyword)
/var/db/repos/gentoo/profiles/features/musl/package.mask:
# Andrew Ammerlaan <andrewammerlaan@gentoo.org> (2024-01-20)
# Binary package linked to glibc (rolling mask, use for all such binpkgs)

- dev-java/openjdk-bin-17.0.11_p9::gentoo (masked by: package.mask)
- dev-java/openjdk-bin-11.0.23_p9::gentoo (masked by: package.mask)
- dev-java/openjdk-bin-8.412_p08::gentoo (masked by: package.mask)



Well, I can't comment on that. I think that if they are linked against glibc it's a problem. So did you try wit package.use.force? It worked for me, it was able to force system-bootstrap to whatever value I put there. However the compilation itself broke. I don't know about alpine package. Is it linked against musl? This might be a no-go on musl.

Somebody more knowledgeable is needed here.

p.s. a related thread that doesn't contain much, but at least gives a tiny bit more information: https://forums.gentoo.org/viewtopic-p-8808725.html

Best Regards,
Georgi
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22697

PostPosted: Sun Jul 21, 2024 2:21 pm    Post subject: Reply with quote

M95D wrote:
So, how do I install it?
Maybe you do not install it. Musl is a non-default libc, and some things just don't work with it because they require glibc. That may be because musl is incomplete in some area or it may be because glibc offered some functionality that the consuming package valued more highly than its maintainer valued being portable to all C libraries.
M95D wrote:
- crossdev emerge?
You need to build Java or find a -bin that someone built to work with musl. Regular emerge can build Java, if you can satisfy the prerequisites.
M95D wrote:
- an official binpkg for musl available soon?
I doubt it. The ebuild downloads packages built by a non-Gentoo project. As I read the ebuild, the project only provides musl for amd64. You are not on amd64, so they are not offering a musl you can use. I think if you want a glibc arm or glibc arm64, those are available. Why are you using musl on this system?
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1255
Location: Richmond Hill, Canada

PostPosted: Sun Jul 21, 2024 3:34 pm    Post subject: Reply with quote

M95D wrote:
So, how do I install it?
- crossdev emerge?
- an official binpkg for musl available soon?
- install alpine package? How?

Thank you.
For musl system, most of time I saw running java was by install a docker container or choort.

Or you can try download from azul.com/zulu for alpinelinux. I never tried myself for musl setting. but I used them for production in past with glibc, it seems to just work.
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Sun Jul 21, 2024 3:35 pm    Post subject: Reply with quote

Hu wrote:
M95D wrote:
So, how do I install it?
Maybe you do not install it. Musl is a non-default libc, and some things just don't work with it because they require glibc. That may be because musl is incomplete in some area or it may be because glibc offered some functionality that the consuming package valued more highly than its maintainer valued being portable to all C libraries.

"Write once, run anywhere", just not on Gentoo arm musl. OK...
Hu wrote:
M95D wrote:
- crossdev emerge?
You need to build Java or find a -bin that someone built to work with musl. Regular emerge can build Java, if you can satisfy the prerequisites.

As you can see, there's only one prerequisite: itself.
Hu wrote:
M95D wrote:
- an official binpkg for musl available soon?
I doubt it. The ebuild downloads packages built by a non-Gentoo project. As I read the ebuild, the project only provides musl for amd64. You are not on amd64, so they are not offering a musl you can use. I think if you want a glibc arm or glibc arm64, those are available. Why are you using musl on this system?

Lets have a "why?" contest!
Why would anyone need musl on amd64?
Why would Gentoo devs create binpkgs for systems capable of building them (x86), but not for systems that can't (arm)?
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22697

PostPosted: Sun Jul 21, 2024 3:55 pm    Post subject: Reply with quote

M95D wrote:
"Write once, run anywhere", just not on Gentoo arm musl.
That joke was funny even before we started introducing exotic architectures. The more honest variant is often quoted as "Write once, test everywhere." As you should know though, the slogan was about how a user could (supposedly) run a Java program on any Java Virtual Machine. You are not to that point yet, because you do not have a Java Virtual Machine. You have not managed to build one, and you are on a sufficiently unusual combination that no one has done it for you.
M95D wrote:
As you can see, there's only one prerequisite: itself.
So you need to install it before you can build it. Simple. Rust manages to do it. ;)
M95D wrote:
Lets have a "why?" contest!
Why would we do that?
M95D wrote:
Why would anyone need musl on amd64?
To ward off the chicken that might otherwise cross the road. Why would musl on amd64 help you, though? You're trying something more exotic.
M95D wrote:
Why would Gentoo devs create binpkgs for systems capable of building them (x86), but not for systems that can't (arm)?
As I wrote above, Gentoo did not create these binaries. As a courtesy, Gentoo provides an ebuild that downloads the Eclipse project's binaries. As such, Gentoo only supports combinations that the Eclipse project chose to build. As of last check by the Gentoo maintainer, the Eclipse project had not chosen to build and publish a jdk bin for your specific requirements. If you could get them to do so, it may not be hard to get the Gentoo ebuild updated to know how to download that new offering.
Back to top
View user's profile Send private message
M95D
Tux's lil' helper
Tux's lil' helper


Joined: 03 Jan 2020
Posts: 94

PostPosted: Sun Jul 21, 2024 4:02 pm    Post subject: Reply with quote

pingtoo wrote:
For musl system, most of time I saw running java was by install a docker container or choort.
Or you can try download from azul.com/zulu for alpinelinux. I never tried myself for musl setting. but I used them for production in past with glibc, it seems to just work.

This is a workaround, not solving the problem. Why complicate things? If the Gentoo problem can't be solved, I can just boot Alpine instead. I never used Alpine before and it seems very different from usual distros. I'm still trying to avoid learning yet another OS.

Is there a way to (temporarily) install packages from Alpine in Gentoo?
Thanks!

PS: Please don't answer here! I'm going to open another topic.
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20485

PostPosted: Sun Jul 21, 2024 5:41 pm    Post subject: Reply with quote

M95D wrote:
If the Gentoo problem can't be solved, I can just boot Alpine instead. ... Is there a way to (temporarily) install packages from Alpine in Gentoo?
If Alpine has the package that can be installed on arm/musl, then maybe you can see how they've achieved that and repeat it with Gentoo.
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
eschwartz
Developer
Developer


Joined: 29 Oct 2023
Posts: 228

PostPosted: Sun Jul 21, 2024 6:44 pm    Post subject: Reply with quote

pjp wrote:
M95D wrote:
If the Gentoo problem can't be solved, I can just boot Alpine instead. ... Is there a way to (temporarily) install packages from Alpine in Gentoo?
If Alpine has the package that can be installed on arm/musl, then maybe you can see how they've achieved that and repeat it with Gentoo.


They depend on openjdk${VERSION}-bootstrap, which isn't available in their repositories but is provided by openjdk${VERSION}. Presumably this is something that one bootstrapper does in private?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on ARM All times are GMT
Goto page 1, 2, 3  Next
Page 1 of 3

 
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