Java Open JDK 7 / SDK 1.7 for Apple PPC iMac / Macbook G3, G4 and G5 – Part 1

Part Two Is Here

Intro

Needed to run latest google app engine development tools on my aging Apple iMac with PPC processor and Mac OSX 10.5.8 – the latest/last incarnation for PPC systems.This was to overcome a bad version in .class file message in the google implemention.

This limited my non-intel Power P/C chipset system to JDK 1.6 as a max working java SDK, and even then it was problematic. So needed to see if it was possible to install the newer JDK 1.7. Since java is so tightly woven into the fabric of OSX, after a lot of research, it became obvious there was no way to do this the ‘apple way’. So i decided to try the open java 7 build as a virgin installation, thus avoiding any reference to the apple versions of java.

Turned out, this is a long-winded topic needing more than a single post. So will describe this ordeal in more than one post. In this post, i’ve listed the reference links used to research this topic. Turns out this is not as super complex as i first thought but for the mo. please review these links :

Reference Links

https://wikis.oracle.com/display/OpenJDK/Darwin9Build for ppc build links

Index of /OpenJDK/macppc and download link: http://www.intricatesoftware.com/OpenJDK/macppc/

openjdk-osx-build – OpenJDK 7 and 8 Community packages for OS/X Snow, Lion and Mountain Lion – Google Project Hosting: http://code.google.com/p/openjdk-osx-build/
Java Evangelist John Yeary’s Blog: OpenJDK 7 on Apple G5 PowerPC on Mac OS X 10.5.8: http://javaevangelist.blogspot.fr/2012/02/openjdk-7-on-apple-g5-powerpc-on-mac-os.html

OpenJDK: Mac OS X Port Project :http://openjdk.java.net/projects/macosx-port/

Issue 4712 – googleappengine – Java for Mac OS X Update Breaks dev_appserver – Google App Engine – Google Project Hosting: http://code.google.com/p/googleappengine/issues/detail?id=4712

google dev_appserver bad version number in .class apple ppc – Google Search:https://www.google.fr/search?q=google+dev_appserver+bad+version+number+in+.class+apple+ppc&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:unofficial&client=firefox-a

Installing Java 7 on Mac OS X | Javalobby : http://java.dzone.com/articles/installing-java-7-mac-os-x

Java – How install a specific jdk on Mac OS X? – Stack Overflow : http://stackoverflow.com/questions/1577014/how-install-a-specific-jdk-on-mac-os-x

openjdk-osx-build – OpenJDK 7 and 8 Community packages for OS/X Snow, Lion and Mountain Lion – Google Project Hosting : http://code.google.com/p/openjdk-osx-build/

New Soft Link Layout – Post Install

This is not the correct place to show you this set of logical soft links, but just stuck it here for the moment. It shows my new /usr/java7 folder holding just the fresh links to the newly installed java7 bits.

// ====================================================================
 iMac:usr jim$ cd /usr/java7
 iMac:java7 jim$ ls -al
 total 256
 drwxrwxrwx  34 root  wheel  1156 27 Jul 23:51 .
 drwxr-xr-x@ 13 root  wheel   442 27 Jul 23:41 ..
 lrwxr-xr-x   1 root  wheel    75 27 Jul 23:48 appletviewer -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/appletviewer
 lrwxr-xr-x   1 root  wheel    66 27 Jul 23:48 apt -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/apt
 lrwxr-xr-x   1 root  wheel    71 27 Jul 23:48 extcheck -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/extcheck
 lrwxr-xr-x   1 root  wheel    67 27 Jul 23:49 idlj -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/idlj
 lrwxr-xr-x   1 root  wheel    66 27 Jul 23:47 jar -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jar
 lrwxr-xr-x   1 root  wheel    72 27 Jul 23:47 jarsigner -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jarsigner
 lrwxr-xr-x   1 root  wheel    67 27 Jul 23:44 java -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/java
 lrwxr-xr-x   1 root  wheel    68 27 Jul 23:44 javac -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/javac
 lrwxr-xr-x   1 root  wheel    70 27 Jul 23:44 javadoc -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/javadoc
 lrwxr-xr-x   1 root  wheel    68 27 Jul 23:44 javah -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/javah
 lrwxr-xr-x   1 root  wheel    68 27 Jul 23:44 javap -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/javap
 lrwxr-xr-x   1 root  wheel    69 27 Jul 23:44 javaws -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/javaws
 lrwxr-xr-x   1 root  wheel    71 27 Jul 23:45 jconsole -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jconsole
 lrwxr-xr-x   1 root  wheel    66 27 Jul 23:46 jdb -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jdb
 lrwxr-xr-x   1 root  wheel    67 27 Jul 23:46 jhat -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jhat
 lrwxr-xr-x   1 root  wheel    68 27 Jul 23:46 jinfo -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jinfo
 lrwxr-xr-x   1 root  wheel    67 27 Jul 23:46 jmap -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jmap
 lrwxr-xr-x   1 root  wheel    66 27 Jul 23:46 jps -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jps
 lrwxr-xr-x   1 root  wheel    69 27 Jul 23:47 jstack -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jstack
 lrwxr-xr-x   1 root  wheel    68 27 Jul 23:47 jstat -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jstat
 lrwxr-xr-x   1 root  wheel    69 27 Jul 23:47 jstatd -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/jstatd
 lrwxr-xr-x   1 root  wheel    70 27 Jul 23:47 keytool -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/keytool
 lrwxr-xr-x   1 root  wheel    67 27 Jul 23:49 orbd -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/orbd
 lrwxr-xr-x   1 root  wheel    70 27 Jul 23:49 pack200 -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/pack200
 lrwxr-xr-x   1 root  wheel    73 27 Jul 23:49 policytool -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/policytool
 lrwxr-xr-x   1 root  wheel    67 27 Jul 23:51 rmic -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/rmic
 lrwxr-xr-x   1 root  wheel    67 27 Jul 23:51 rmid -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/rmid
 lrwxr-xr-x   1 root  wheel    74 27 Jul 23:51 rmiregistry -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/rmiregistry
 lrwxr-xr-x   1 root  wheel    72 27 Jul 23:50 serialver -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/serialver
 lrwxr-xr-x   1 root  wheel    73 27 Jul 23:50 servertool -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/servertool
 lrwxr-xr-x   1 root  wheel    72 27 Jul 23:50 tnameserv -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/tnameserv
 lrwxr-xr-x   1 root  wheel    72 27 Jul 23:50 unpack200 -> /System/Library/Frameworks/JavaVM.framework/Versions/1.7.0/bin/unpack200
iMac:java7 jim$ javac -version
 javac 1.7.0-internal
iMac:java7 jim$ javah
 Usage:
   javah [options] <classes>
 where [options] include:
   -o <file>                Output file (only one of -d or -o may be used)
   -d <dir>                 Output directory
   -v  -verbose             Enable verbose output
   -h  --help  -?           Print this message
   -version                 Print version information
   -jni                     Generate JNI-style header file (default)
   -force                   Always write output files
   -classpath <path>        Path from which to load classes
   -bootclasspath <path>    Path from which to load bootstrap classes
 <classes> are specified with their fully qualified names
 (for example, java.lang.Object).
iMac:java7 jim$ javah -version
 javah version "1.7.0-internal"
iMac:java7 jim$ pwd
 /usr/java7
 // started out to fix ownership and permissions of jdk folders and components
 // but this became a long affair, so will detail this in the next post
 // =========================================================
 iMac:usr jim$ sudo chmod 777 java7

Part Two Is Here

One thought on “Java Open JDK 7 / SDK 1.7 for Apple PPC iMac / Macbook G3, G4 and G5 – Part 1

Leave a comment