ports/173505: Java3d port does not compile
James Raynard
james.raynard at pobox.com
Fri Nov 9 17:10:02 UTC 2012
>Number: 173505
>Category: ports
>Synopsis: Java3d port does not compile
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Nov 09 17:10:01 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator: James Raynard
>Release: 9.0
>Organization:
>Environment:
FreeBSD deltablues.my.domain 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Tue Jan 3 07:15:25 UTC 2012 root at obrian.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
>Description:
When attempting to build the port, the following output is observed:
compile-opt:
[mkdir] Created dir: /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/build/freebsd/opt/classes
[mkdir] Created dir: /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/build/freebsd/opt/gen/tools
[mkdir] Created dir: /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/build/freebsd/opt/gen/classes/javax/media/j3d
[copy] Copying 1 file to /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/build/freebsd/opt/gen/classes/javax/media/j3d
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/build.xml:102: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
[javac] Compiling 760 source files to /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/build/freebsd/opt/classes
[javac] warning: [options] bootstrap class path not set in conjunction with -source 1.5
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:38: warning: X11GraphicsDevice is internal proprietary API and may be removed in a future release
[javac] import sun.awt.X11GraphicsDevice;
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:39: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] import sun.awt.X11GraphicsConfig;
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeScreenInfo.java:35: warning: X11GraphicsDevice is internal proprietary API and may be removed in a future release
[javac] import sun.awt.X11GraphicsDevice;
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java:64: error: package com.sun.image.codec.jpeg does not exist
[javac] import com.sun.image.codec.jpeg.JPEGImageEncoder;
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java:65: error: package com.sun.image.codec.jpeg does not exist
[javac] import com.sun.image.codec.jpeg.JPEGImageDecoder;
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java:66: error: package com.sun.image.codec.jpeg does not exist
[javac] import com.sun.image.codec.jpeg.JPEGCodec;
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java:67: error: package com.sun.image.codec.jpeg does not exist
[javac] import com.sun.image.codec.jpeg.JPEGEncodeParam;
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:75: warning: X11GraphicsDevice is internal proprietary API and may be removed in a future release
[javac] X11GraphicsDevice gd =
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:76: warning: X11GraphicsDevice is internal proprietary API and may be removed in a future release
[javac] (X11GraphicsDevice)((X11GraphicsConfig)gc[0]).getDevice();
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:76: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] (X11GraphicsDevice)((X11GraphicsConfig)gc[0]).getDevice();
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:91: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] ((X11GraphicsConfig)gc[i]).getVisual());
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:140: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] X11GraphicsConfig gc0 = null;
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:142: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] if (((X11GraphicsConfig)gc[i]).getVisual() == visID) {
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:143: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] gc0 = (X11GraphicsConfig)gc[i];
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:154: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] X11GraphicsConfig gc1 =
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:155: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] X11GraphicsConfig.getConfig(gd, gc0.getVisual(),
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:180: warning: X11GraphicsDevice is internal proprietary API and may be removed in a future release
[javac] X11GraphicsDevice gd =
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:181: warning: X11GraphicsDevice is internal proprietary API and may be removed in a future release
[javac] (X11GraphicsDevice)((X11GraphicsConfig)gc).getDevice();
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/x11/javax/media/j3d/X11NativeConfigTemplate3D.java:181: warning: X11GraphicsConfig is internal proprietary API and may be removed in a future release
[javac] (X11GraphicsDevice)((X11GraphicsConfig)gc).getDevice();
[javac] ^
(...)
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/applet/MainFrame.java:341: warning: AppletAudioClip is internal proprietary API and may be removed in a future release
[javac] return new sun.applet.AppletAudioClip( url );
[javac] ^
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java:206: error: cannot find symbol
[javac] JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder( byteStream );
[javac] ^
[javac] symbol: class JPEGImageEncoder
[javac] location: class ImageComponentState
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java:206: error: cannot find symbol
[javac] JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder( byteStream );
[javac] ^
[javac] symbol: variable JPEGCodec
[javac] location: class ImageComponentState
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java:265: error: cannot find symbol
[javac] JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder( byteStream );
[javac] ^
[javac] symbol: class JPEGImageDecoder
[javac] location: class ImageComponentState
[javac] /usr/ports/java/java3d/work/java3d-1.5.2/j3d-core-utils/src/classes/share/com/sun/j3d/utils/scenegraph/io/state/javax/media/j3d/ImageComponentState.java:265: error: cannot find symbol
[javac] JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder( byteStream );
[javac] ^
[javac] symbol: variable JPEGCodec
[javac] location: class ImageComponentState
[javac] Note: Some input files use or override a deprecated API.
[javac] Note: Recompile with -Xlint:deprecation for details.
[javac] Note: Some input files use unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
[javac] 8 errors
[javac] 39 warnings
BUILD FAILED
/usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/build.xml:439: The following error occurred while executing this line:
/usr/ports/java/java3d/work/java3d-1.5.2/j3d-core/src/classes/build.xml:102: Compile failed; see the compiler error output for details.
Total time: 8 seconds
*** Error code 1
Stop in /usr/ports/java/java3d.
>How-To-Repeat:
# cd /usr/ports/java/java3d
# make
>Fix:
I know very little about Java, but according to discussions on stackoverflow.com this is caused by the JDK7 compiler using a symbol table that does not include all Sun-proprietary classes. The recommended solution is to compile with -XDignore.symbol.file
I have tried adding a line "JAVAC= ${JAVAC} -XDignore.symbol.file" to the Makefile, but this does not help.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list