=//========================================================================IBM= IBM Java(TM) 2 Port for AIX - Technology Preview README.a12a Copyright (c) 1996,1998 IBM Corporation. Build date: December 1998 Release name: 1.2.0.alpha Full version: JDK 1.2.0.alpha IBM build a12a-19981222 Thank you for downloading the IBM Java(TM) 2 Port for AIX - Technology Preview ported from the Sun 1.2 JDK reference platform source code. //-- 1. FEATURES ------------------------------------------------------------- This technology release is based on the Sun final FCS (V) distribution; please see URL http://www.javasoft.com/jdk for a lot of information about the Java 2 Platform and related information. Most, but not all, functionality is working at this time. Audio, jdbc are not present. Other function may be present, but occasional failures may be seen. //-- 2. NOTE ----------------------------------------------------------------- The software contained in this package runs on AIX Version 4.3.2 (it was built using that) and some testing has also been successful on AIX 4.3.1. This means that we haven't yet seen any differences between running on 4.3.1 and 4.3.2, but most testing has been done with AIX 4.3.2. Future distributions of the AIX Java 2 Developers Toolkit are expected to run on AIX 4.2 and 4.3. //-- 3. INSTALLATION --------------------------------------------------------- This distribution comes in the form of a single downloadable file. When downloading completes you should have a file called Java12a.tar.Z. For clarity we're assuming the following: - the downloaded file in is /tmp - you wish to install the package in /usr/lpp. (Other locations are fine.) - you are performing this installation while logged in as 'joe'. - your home directory is /u/joe. - user 'joe' has the necessary file system permissions (write access to /usr/lpp for our purposes). Issue the following commands: rm -fr /usr/lpp/J1.2.a cd /usr/lpp zcat /tmp/Java12a.tar.Z | tar -xvf - Set up your PATH environment variable to refer to the new installation: export PATH=/usr/lpp/J1.2.a/bin:$PATH Note: It is not necessary to install into /usr/lpp - any other suitable location is fine. SPECIAL NOTE FOR ALPHAWORKS DOWNLOADS: In order to improve downloading of this substantial package, it has been broken into 6 smaller pieces which need to be reassembled using the updated instructions on the http://www.alphaWorks.ibm.com/ site under requirements. //-- 4. VERIFICATION --------------------------------------------------------- To ensure that the verification process behaves consistently, do the following: unset LIBPATH unset CLASSPATH unset LD_LIBRARY_PATH unset JAVA_COMPILER unset JAVA_HOME If you issue the command java -fullversion it should respond with: java full version "JDK1.2.0.alpha IBM build a12a-19981222" If this is not correct, check that the PATH is set up correctly. (See above). Once verification is complete, relogin and review any values you may have assigned to these variables for possible conflicts with the new installation. Unless it already existed, executing 'appletviewer' will create a directory called .hotjava in your home directory. Issuing 'ls -a ~' should confirm this. //-- 5. JUST-IN-TIME (JIT) COMPILER ------------------------------------------ This technology preview does not include a JIT compiler. //-- 6. AIX NATIVE THREADS --------------------------------------------------- The JDK uses AIX's POSIX threads ('pthread') package for its threading. This means that Java threads can be scheduled on multiple processors on multi-processor systems. Thread priorities are not supported. All threads run at the same priority. The 'green threads' implementation released with JDK1.0.2 is no longer supported and is not included in the technology preview. //-- 7. JNI EXAMPLE ---------------------------------------------------------- In the jni_example directory, you will find a simple example of the use of the new JNI interface for native methods introduced in 1.1 The file jni_example/README contains information about the example, plus general notes on shared libraries. Note about JNI on AIX4.3: because of some incompatibility between the JDK and some system defined types, compilation of JNI code requires that the compiler use the flag _AIX43. This flag is defined by default in /etc/ibmcxx.cfg. But, if you are using a version of xlc prior to v3.6.4 then you will need to add _AIX43 to /etc/xlC.cfg or use -D_AIX43 as a compilation command line option. If you wish to try the C++ version, then please also check the location of the makeC++SharedLib command on your system and amend the jni_example/cpp/Makefile accordingly. //-- 8. AIX FIXES ------------------------------------------------------------ None known to be needed at this time. //-- 9. INPUT METHOD ROUTINES -------------------------------------------- Input Method support has not been tested in this release and is believed not working yet. //-- 10. SUPPORTED LOCALES ----------------------------------------------- At the present time, only en_US (encoding ISO8859-1) has been tested with this technology preview release. Other single-byte locales have been tried with some success. DBCS locales will experience problems using this release. //-- 11. REVISION HISTORY ------------------------------------------------ Dec 1998 - Release of IBM Java(TM) 2 Port for AIX - Technology Preview //-- 12. KNOWN PROBLEMS -------------------------------------------------- Please remember that this is a technology preview release, and that some things may be less than ideal. However, IBM plans to ship a full release of the Java 2 development kit for AIX meeting the high standards of function, scalability and performance usually expected of IBM. The vast majority of the 1.2 JCK has been executed cleanly against this technology preview release, as well as another test suite and other applications including benchmarks. Graphics There are several instances in the demos where poor quality graphics may be seen. For example, the Java2DemoApplet.html example has many variables with which you can experiment. Performance improves a little after turning off anti-aliasing. Currently the demo/jfc demos work only on the local display (DISPLAY=:0.0 or equivalent) although the demo/applets demos are working on local and remote displays. Window controls and annotations Occasionally, using the mouse to click on one GUI controls may be misdirected to another control. For example, this has been seen with menu titles and groups of checkboxes in some of the demos. However, the problem is intermittent. Threads and processes There may be infrequent problems using threads, and there is a known problem affecting the Runtime.exec() api with very short-lived child processes. Native Methods and JNI This codebase uses handles internally, so your existing old-style native method libraries will be broken compared to the AIX 1.1.6 JDK; that is, they will need to be recompiled. The 1.2 JNI internals are changed compared to the 1.1 JNI, so your JNI native methods may experience failures in this technology preview release. Failures seen so far include - passing a null clazz argument to GetMethodID(). - using CallVoidMethodV() to invoke a Java method which actually returns an Object. We suggest you use java_g or appletviewer_g with your JNI applications as this makes use of an additional checking layer in the JNI. Fonts The fonts specified in font.properties may be modified; feel free to modify them to your own requirements. Note that some TrueType fonts from the Sun reference distribution are included with this technology preview release in lib/fonts, although these are not used. If you see some text displayed using Greek characters, then check that you have the following fileset installed; if not, you will need to install it to avoid this effect: X11.fnt.ucs.ttf 4.3.2.0 C AIXwindows Unicode TrueType Java 2 introduces new font management and rendering function, but some font filesets may cause a problem. A message may be seen looking like: /usr/lib/X11/fonts/TrueType/hmfmm.ttc - CMAP 3,5 found at offset 12. followed by a SIGSEGV program check (similar messages may be seen without a SIGSEGV so those may be ignored). You can use the lslpp command "lslpp -L | grep ttf" to see what TrueType filesets are installed. If you have only this fileset: X11.fnt.ucs.ttf 4.3.2.0 C AIXwindows Unicode TrueType then we think you shouldn't experience this problem. The following font filesets (possibly there are others) may be connected with the above SIGSEGV problem: X11.fnt.ksc5601.ttf X11.fnt.ucs.ttf_CN //-- 13. CORRESPONDENCE -------------------------------------------------- This technology preview is provided for experimentation and early education purposes only. There is no support like our production releases of 1.1 although we will monitor the usual newsgroups. Please see the following web page for further information about the Java 2 technology preview for AIX and related matters. http://ncc.hursley.ibm.com/javainfo/interact/ //---------------------------------------------------------------------IBM-