odf / gavrog

Generation, analysis and visualization of reticular ornaments using Gavrog.
http://www.gavrog.org
Apache License 2.0
33 stars 5 forks source link

Cannot run 3dt on Mac OS X #1

Closed fxcoudert closed 5 years ago

fxcoudert commented 10 years ago

I'm trying to run 3dt (from the latest gavrog download) on Mac OS X 10.9.1, but it doesn't want to launch. Running the bin/3dt script gives an error, because the JAVA variable contains a space and it is not properly quoted. If I fix that by adding quotes to lines 3:

JAVA="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java"

and 15:

if "$JAVA" -Xmx512m -D3dt.home="$BASE" -Djava.library.path="$BASE/jogl"

then the program launches further. However, it then says:

Could not find configuration file /Users/fx/.3dt
initializing tool system
initializing tool system
OpenGL viewer could not render.
Hit Return to close this window

and nothing more happens (the interface doesn't open). I don't know why the OpenGL viewer cannot work (I installed all components the installer offered), and there are no messages in the Console either.

fxcoudert commented 10 years ago

OK, I found a solution: the installer find Oracle's Java 7, but the app only wants to run with Apple's Java 6. So, I could make it run by editing the file /Applications/Gavrog/bin/3dt to replace:

JAVA="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java"

with

JAVA="java"
odf commented 10 years ago

Thanks for the report! The lack of proper quoting is an oversight on my part and, fortunately, should be easy to fix.

I'm not sure yet how to address the incompatibility issues. Ideally, any Java version from 5 upward should be supported, but unfortunately I don't have the resources to do that. I know, for example, that the current OpenGL viewer does not work with 64-bit JVMs because I don't have the necessary native libraries. It seems that in order to get 64-bit libraries I need to upgrade the whole display system, which is probably not a bad idea, anyway. If we're very, very lucky, this will solve all current issues with newer Java versions and not introduce any incompatibilities with older ones.

I'll see if I can figure out exactly which versions work with the current code, though, and make the installer pick those where available.