Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
export JAVA_HOME=/opt/local/Library/Java/JavaVirtualMachine/openjdk8-jre/ ls -ld /opt/local/Library/Java/JavaVirtualMachine/openjdk8-jre/Contents/Home/bin/j* ls -ld /opt/local/Library/Java/JavaVirtualMachine/openjdk8-jre/bin/j* /Library/Java/JavaVirtualMachines/openjdk8/Contents/Home/bin/java -jar /Users/jordapaul/Desktop/Mindustry.jar
1741390813884.png
got this
 
On 10.5.8 install standard MacPorts, then follow instructions in https://guide.macports.org/chunked/development.local-repositories.html to make a local overlay repo (you do not need everything from my fork, just borrowing specifically openjdk8-powerpc should work). In result you simply need the port source in, for example `/opt/local/my_local_ports/java/openjdk8-powerpc` and add the path to it like `file:///opt/local/my_local_ports` (above the default source path) in `sources.conf` in `/opt/local/etc/macports` (assuming your installation is in the default prefix).
You can get my ports from https://github.com/macos-powerpc/powerpc-ports/releases/tag/2025.02-1 if using `git clone` is not convenient. Then just pick w/e you want from the extracted sources.
1741391354827.png

like this ?

edit :I just saw on your image and it's doesnt not even similar, my bad
Is it this ?
1741391977395.png


So i thought to look for portIndex (file that i see on your printscreen) so i looked up and find this
1741392215046.png
 
Last edited:
Seems like OpenJDK can't find some of the system dynamic library .dylib files it needs. And although I don't have the code for OpenJDK or the game in front of me, the error messages all seem to reference SDL, which is a cross-platform multimedia API layer often used in place of directly writing X11, Windows GDI, Cocoa, etc. system calls. So, I'd wager that the errors relate to OpenJDK being a headless build. Unfortunately, it looks like you may likely not be able to play the game for now on OpenJDK8 until it can be re-built with X11 or Cocoa support.

There is also a warning message about Discord requiring JVM version 16+. I've not played the game myself nor looked at the code for it, but I'm assuming that the Discord features in the game are optional since OpenJDK is just providing a warning rather than error. Nonetheless, it's something to be aware of as another potential snag.
 
  • Like
Reactions: barracuda156
Maybe you could help with fixing X11 backend in OpenJDK? That would be a big deal.
(I am not sure Cocoa is feasible, but X11 should be.)
Would love to, although first I would like to do a little more work to tie up the loose ends of LD64 and the OpenSSL assembler optimizations, and make a quick workaround for async web-pages to benefit TFF/IWPPC/Aquafox. After that, I'd be happy to take a look and see what I can do to help get OpenJDK8 working with SDL/X11 or Cocoa.

P.S. As an minor update on LD64 and OpenSSL-assembler: I've found that with one small change to the code, LD64 no longer needs OpenSSL on OS X 10.4+, which greatly simplifies the dependency tree, and I've found a way around the Bus Error but doing it causes another bug for the files that would cause the Bus Error, so there's still a little more work to be done. Also, I can now get the 64-bit PowerPC assembler optimized version of OpenSSL to pass the ../test/recipes/80-test_ssl_old.t when I run it the second time and thereafter outside of the test suite, which suggests to me that it may simply be an issue with the test suite itself. I'll post a more comprehensive update in the "llvm and ld64 for ppc64 on Leopard" thread once I've done a little more work.
 
Seems like OpenJDK can't find some of the system dynamic library .dylib files it needs. And although I don't have the code for OpenJDK or the game in front of me, the error messages all seem to reference SDL, which is a cross-platform multimedia API layer often used in place of directly writing X11, Windows GDI, Cocoa, etc. system calls. So, I'd wager that the errors relate to OpenJDK being a headless build. Unfortunately, it looks like you may likely not be able to play the game for now on OpenJDK8 until it can be re-built with X11 or Cocoa support.
Ok, still thanks for the help !

And i would help too, but I'm still learning swift and java so i don't know a lot about this
 

First of all, the path is wrong, which is why nothing is found there. The correct one has `JavaVirtualMachines`, not `JavaVirtualMachine`.

I have no idea what `libarc` is (what I find on GitHub seems to be unrelated), but SDL is a separate library and probably requires to be installed. If it needs SDL2, then that one uses X11 on macOS, so you will also need X server for anything to run.
 
like this ?

edit :I just saw on your image and it's doesnt not even similar, my bad
Is it this ?

So i thought to look for portIndex (file that i see on your printscreen) so i looked up and find this

I kinda hoped you gonna take a look at the link I referred earlier to MacPorts documentation, but anyway, here is what you need (I assume MacPorts installation in /opt/local):

1. Download and extract ports sources archive from here: https://github.com/macos-powerpc/powerpc-ports/releases/tag/2025.02-1
In result you have a folder `powerpc-ports-2025.02-1` with a ports tree, which has the same structure as MacPorts official one.
2. It does not really matter where you place your local ports, but let’s assume you put them into MacPorts prefix. Then do the following (names are arbitrary):
Code:
sudo mkdir /opt/local/LeopardPorts
sudo cp -pR ${path_to_extracted_archive}/powerpc-ports-2025.02-1/java /opt/local/LeopardPorts/
This gonna place `java` directory into your local `LeopardPorts`.
3. Open `sources.conf`, for example with a free TextWrangler app (adjust the command if you use another editor like `vi` or w/e):
Code:
edit /opt/local/etc/macports/sources.conf
Add this above the default path, close with saving:
Code:
file:///opt/local/LeopardPorts
4. Run port sync:
Code:
sudo port -v sync

P. S. Normally you would want to have this as well: `_resources/port1.0/group/java-1.0.tcl`, but that only matters if you install Java ports via MacPorts, which is not what you do at the moment.
 
So i could just change the name of the folder ?

how do I do this ?

1. If you mean in the commands, then yes, use correct path there. Please do not change the directory name in the filesystem, that gonna mess everything up a big time.

2. `sudo port -v install libsdl`, if it uses SDL1. (But I have no idea which SDL is needed here and whether just installing the port is sufficient, please refer to the documentation for your app or ask its developer.)
 
like this ?

P. S. TBH, if this looks unnecessary complicated, I do not think there will be any dramatic or even noticeable difference between a slightly older version of OpenJDK8 in official MacPorts and slightly newer one. It may still be useful to figure out how to use custom local ports, but specifically for this case it perhaps does not matter, and you can just use the version in official MacPorts.
 

This is MacPorts installation (unless you created all these directories by hand, LOL). When you install MacPorts without manual tweaks, it will be in `/opt/local`. That is its home.

Just in case, it is a good idea not to install anything unrelated into `/opt/local`, so that you know what is there. (Placing your custom sources there is fine, but avoid installing any binaries, libs or headers into MacPorts prefix.)
 
This is MacPorts installation (unless you created all these directories by hand, LOL). When you install MacPorts without manual tweaks, it will be in `/opt/local`. That is its home.
Hooooo, I understand now !
But what about the folder you called LeopardPorts, do i just do opt/local ?
 
Hooooo, I understand now !
But what about the folder you called LeopardPorts, do i just do opt/local ?

`LeopardPorts` is an arbitrary name of some folder where you place custom ports. It can be anything and located anywhere. Placing it inside /opt or /opt/local and using some transparent name just makes it easier to find it.

(I normally use naming which explicitly specifies the OS version, so that if I copy the folder for a back-up, I do not need to guess where it originated from.)
 
Would love to, although first I would like to do a little more work to tie up the loose ends of LD64 and the OpenSSL assembler optimizations, and make a quick workaround for async web-pages to benefit TFF/IWPPC/Aquafox. After that, I'd be happy to take a look and see what I can do to help get OpenJDK8 working with SDL/X11 or Cocoa.

P.S. As an minor update on LD64 and OpenSSL-assembler: I've found that with one small change to the code, LD64 no longer needs OpenSSL on OS X 10.4+, which greatly simplifies the dependency tree, and I've found a way around the Bus Error but doing it causes another bug for the files that would cause the Bus Error, so there's still a little more work to be done. Also, I can now get the 64-bit PowerPC assembler optimized version of OpenSSL to pass the ../test/recipes/80-test_ssl_old.t when I run it the second time and thereafter outside of the test suite, which suggests to me that it may simply be an issue with the test suite itself. I'll post a more comprehensive update in the "llvm and ld64 for ppc64 on Leopard" thread once I've done a little more work.

Sounds great, thank you.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.