[MacPorts] #23092: InsightToolKit should not clean on each build

MacPorts noreply at macports.org
Thu Feb 18 12:46:05 PST 2010


#23092: InsightToolKit should not clean on each build
---------------------------------+------------------------------------------
  Reporter:  trog24@…            |       Owner:  dweber@…           
      Type:  defect              |      Status:  reopened           
  Priority:  Normal              |   Milestone:                     
 Component:  ports               |     Version:  1.8.2              
Resolution:                      |    Keywords:                     
      Port:  InsightToolKit      |  
---------------------------------+------------------------------------------

Comment(by dweber@…):

 I have no idea whether the port is 'cleaning' before every build - is it?
 There is nothing specific in the port to instruct a clean.  Maybe the
 latest version of cmake is doing an automatic clean during the configure
 phase?  Even if it did, the configure phase should be done and port should
 skip it when re-running the build after a failure.

 For the record, this is the java failure, very late in the build process
 that includes java wrapping of the c++ code:

 {{{
 [ 94%] Building
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_InsightToolkit/work/InsightToolkit-3.16-build/Wrapping/WrapITK/Java/InsightToolkit/BaseJava.class
 cd
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_InsightToolkit/work/InsightToolkit-3.16-build/Wrapping/WrapITK/Java
 && /usr/bin/javac -classpath
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_InsightToolkit/work/InsightToolkit-3.16-build/Wrapping/WrapITK/Java
 -d
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_InsightToolkit/work/InsightToolkit-3.16-build/Wrapping/WrapITK/Java
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_InsightToolkit/work/InsightToolkit-3.16-build/Wrapping/WrapITK/Java/InsightToolkit/BaseJava.java


 The system is out of resources.
 Consult the following stack trace for details.
 java.lang.OutOfMemoryError: Java heap space
         at
 com.sun.tools.javac.util.Position$LineMapImpl.build(Position.java:139)
         at com.sun.tools.javac.util.Position.makeLineMap(Position.java:63)
         at
 com.sun.tools.javac.parser.Scanner.getLineMap(Scanner.java:1105)
         at
 com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:512)
         at
 com.sun.tools.javac.main.JavaCompiler.complete(JavaCompiler.java:646)
         at
 com.sun.tools.javac.jvm.ClassReader.fillIn(ClassReader.java:1869)
         at
 com.sun.tools.javac.jvm.ClassReader.complete(ClassReader.java:1777)
         at com.sun.tools.javac.code.Symbol.complete(Symbol.java:386)
         at
 com.sun.tools.javac.code.Symbol$ClassSymbol.complete(Symbol.java:758)
         at
 com.sun.tools.javac.jvm.ClassReader.loadClass(ClassReader.java:1951)
         at com.sun.tools.javac.comp.Resolve.loadClass(Resolve.java:842)
         at
 com.sun.tools.javac.comp.Resolve.findGlobalType(Resolve.java:901)
         at com.sun.tools.javac.comp.Resolve.findType(Resolve.java:957)
         at com.sun.tools.javac.comp.Resolve.findIdent(Resolve.java:986)
         at
 com.sun.tools.javac.comp.Resolve.resolveIdent(Resolve.java:1162)
         at com.sun.tools.javac.comp.Attr.visitIdent(Attr.java:1714)
         at
 com.sun.tools.javac.tree.JCTree$JCIdent.accept(JCTree.java:1547)
         at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:360)
         at com.sun.tools.javac.comp.Attr.attribType(Attr.java:390)
         at com.sun.tools.javac.comp.Attr.visitNewClass(Attr.java:1351)
         at
 com.sun.tools.javac.tree.JCTree$JCNewClass.accept(JCTree.java:1257)
         at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:360)
         at com.sun.tools.javac.comp.Attr.attribExpr(Attr.java:377)
         at com.sun.tools.javac.comp.Attr.visitAssign(Attr.java:1550)
         at
 com.sun.tools.javac.tree.JCTree$JCAssign.accept(JCTree.java:1342)
         at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:360)
         at com.sun.tools.javac.comp.Attr.attribExpr(Attr.java:384)
         at com.sun.tools.javac.comp.Attr.visitExec(Attr.java:1017)
         at
 com.sun.tools.javac.tree.JCTree$JCExpressionStatement.accept(JCTree.java:1074)
         at com.sun.tools.javac.comp.Attr.attribTree(Attr.java:360)
         at com.sun.tools.javac.comp.Attr.attribStat(Attr.java:397)
         at com.sun.tools.javac.comp.Attr.attribStats(Attr.java:413)
 gnumake[2]: *** [Wrapping/WrapITK/Java/InsightToolkit/BaseJava.class]
 Error 3
 gnumake[1]: *** [Wrapping/WrapITK/Java/CMakeFiles/ITKJavaJar.dir/all]
 Error 2
 gnumake: *** [all] Error 2
 Error: Target org.macports.build returned: shell command " cd
 "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_InsightToolkit/work/InsightToolkit-3.16-build"
 && /usr/bin/gnumake -j1 all " returned error 2
 DEBUG: Backtrace: shell command " cd
 "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_InsightToolkit/work/InsightToolkit-3.16-build"
 && /usr/bin/gnumake -j1 all " returned error 2
     while executing
 "command_exec build"
     (procedure "portbuild::build_main" line 9)
     invoked from within
 "$procedure $targetname"
 Warning: the following items did not execute (for InsightToolkit):
 org.macports.activate org.macports.build org.macports.destroot
 org.macports.install
 Error: Status 1 encountered during processing.
 To report a bug, see <http://guide.macports.org/#project.tickets>
 }}}


 This particular failure was run on a recent Mac Pro system with 16 Gb of
 RAM, running OSX 10.6.x.  I've now seen numerous failures like this on
 10.6, which were not apparent on 10.5.x - are we dealing with a crappy
 java-vm on 10.6.x?

 Is there a way to modify the java-vm memory space in a Portfile?

 I'm not familiar with how to set java parameters in a build process like
 this, but I've seen recommendations on how to increase memory available to
 java in the ImageJ community, e.g.:
 http://imagejdocu.tudor.lu/doku.php?id=faq:technical:how_do_i_increase_the_memory_in_imagej

-- 
Ticket URL: <http://trac.macports.org/ticket/23092#comment:16>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list