View previous topic :: View next topic |
Author |
Message |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Fri Jul 19, 2024 3:07 pm Post subject: How to install java on arm musl? |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
grknight Retired Dev
![Retired Dev Retired Dev](/images/ranks/rank-retired.gif)
Joined: 20 Feb 2015 Posts: 1832
|
Posted: Fri Jul 19, 2024 3:17 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Fri Jul 19, 2024 5:40 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
logrusx Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/176594205966916859b5145.jpg)
Joined: 22 Feb 2018 Posts: 2149
|
Posted: Fri Jul 19, 2024 5:58 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Fri Jul 19, 2024 6:57 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
logrusx Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/176594205966916859b5145.jpg)
Joined: 22 Feb 2018 Posts: 2149
|
Posted: Fri Jul 19, 2024 7:26 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Fri Jul 19, 2024 7:33 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Fri Jul 19, 2024 7:41 pm Post subject: |
|
|
logrusx wrote: |
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 |
|
![](templates/gentoo/images/spacer.gif) |
logrusx Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/176594205966916859b5145.jpg)
Joined: 22 Feb 2018 Posts: 2149
|
Posted: Fri Jul 19, 2024 8:37 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Sat Jul 20, 2024 6:33 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
lars_the_bear Guru
![Guru Guru](/images/ranks/rank_rect_3.gif)
Joined: 05 Jun 2024 Posts: 364
|
Posted: Sat Jul 20, 2024 11:31 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
logrusx Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/176594205966916859b5145.jpg)
Joined: 22 Feb 2018 Posts: 2149
|
Posted: Sat Jul 20, 2024 3:26 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
lars_the_bear Guru
![Guru Guru](/images/ranks/rank_rect_3.gif)
Joined: 05 Jun 2024 Posts: 364
|
Posted: Sat Jul 20, 2024 4:34 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
logrusx Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/176594205966916859b5145.jpg)
Joined: 22 Feb 2018 Posts: 2149
|
Posted: Sat Jul 20, 2024 4:40 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Sun Jul 21, 2024 8:32 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
logrusx Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/176594205966916859b5145.jpg)
Joined: 22 Feb 2018 Posts: 2149
|
Posted: Sun Jul 21, 2024 8:37 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Sun Jul 21, 2024 8:38 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
logrusx Advocate
![Advocate Advocate](/images/ranks/rank-G-1-advocate.gif)
![](images/avatars/176594205966916859b5145.jpg)
Joined: 22 Feb 2018 Posts: 2149
|
Posted: Sun Jul 21, 2024 8:56 am Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Hu Administrator
![Administrator Administrator](/images/ranks/rank-admin.gif)
Joined: 06 Mar 2007 Posts: 22364
|
Posted: Sun Jul 21, 2024 2:21 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
pingtoo Veteran
![Veteran Veteran](/images/ranks/rank_rect_5_vet.gif)
![](images/avatars/gallery/Star Wars/movie_star_wars_storm_trooper.gif)
Joined: 10 Sep 2021 Posts: 1107 Location: Richmond Hill, Canada
|
Posted: Sun Jul 21, 2024 3:34 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Sun Jul 21, 2024 3:35 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
Hu Administrator
![Administrator Administrator](/images/ranks/rank-admin.gif)
Joined: 06 Mar 2007 Posts: 22364
|
Posted: Sun Jul 21, 2024 3:55 pm Post subject: |
|
|
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. ![Wink ;)](images/smiles/icon_wink.gif) 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 |
|
![](templates/gentoo/images/spacer.gif) |
M95D Tux's lil' helper
![Tux's lil' helper Tux's lil' helper](/images/ranks/rank_rect_1.gif)
Joined: 03 Jan 2020 Posts: 91
|
Posted: Sun Jul 21, 2024 4:02 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
pjp Administrator
![Administrator Administrator](/images/ranks/rank-admin.gif)
![](images/avatars/1154772887439692d88303b.jpg)
Joined: 16 Apr 2002 Posts: 20329
|
Posted: Sun Jul 21, 2024 5:41 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
eschwartz Developer
![Developer Developer](/images/ranks/rank-dev.gif)
![](images/avatars/180460208566750902dba46.png)
Joined: 29 Oct 2023 Posts: 130
|
Posted: Sun Jul 21, 2024 6:44 pm Post subject: |
|
|
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 |
|
![](templates/gentoo/images/spacer.gif) |
|