Hello Andrew,
You are correct in that it "should just work". What's failing here is
part of bootstrapping the top level makefile targets. The logic for this
can be found in make/common/Modules.gmk. What happens there is that a
java tool is built and then used to convert modules.xml into a list of
module dependencies that the makefiles can interpret. The failure you
see is in trying to build this tool. The makefile is trying to find the
tool classes, but finds none:
Writing 0 paths to >>
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp
Then javac fails when the @file that should contain the classes to
compile doesn't exist.
Can you check that you have
$(JDK_TOPDIR)/make/src/classes/build/tools/module in your source tree?
/Erik
On 2015-06-25 14:52, Andrew Haley wrote:
Sorry to bother you, but I'm really stuck.
I'm trying to build on Solaris 11. I've installed solarisstudio12.3 and
added it to my path, and all the dependencies.
Configured like this:
sh ./configure --with-debug-level=slowdebug --with-jvm-variants=server
--disable-zip-debug-info --with-boot-jdk=/usr/jdk/latest
--disable-warnings-as-errors
...
using configure arguments '--with-debug-level=slowdebug
--with-jvm-variants=server --disable-zip-debug-info
--with-boot-jdk=/usr/jdk/latest --disable-warnings-as-errors'.
Configuration summary:
* Debug level: slowdebug
* HS debug level: debug
* JDK variant: normal
* JVM variants: server
* OpenJDK target: OS: solaris, CPU architecture: x86, address length: 64
Tools summary:
* Boot JDK: java version "1.8.0_05" Java(TM) SE Runtime Environment
(build 1.8.0_05-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode) (at
/usr/jdk/latest)
* Toolchain: solstudio (Oracle Solaris Studio)
* C Compiler: Version 5.12 (at /opt/solarisstudio12.3/bin/cc)
* C++ Compiler: Version 5.12 (at /opt/solarisstudio12.3/bin/CC)
Build performance summary:
* Cores to use: 5
* Memory limit: 8192 MB
But:
$ gmake
wc:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp:
No such file or directory
Compiling files for BUILD_GENMODULESLIST
javac: file not found:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp
(No such file or directory)
Building target 'default' in configuration
'solaris-x86_64-normal-server-slowdebug'
wc:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp:
No such file or directory
Compiling files for BUILD_GENMODULESLIST
javac: file not found:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp
(No such file or directory)
wc:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp:
No such file or directory
wc:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp:
No such file or directory
Compiling files for BUILD_GENMODULESLIST
Compiling 8 files for BUILD_TOOLS_LANGTOOLS
Compiling files for BUILD_GENMODULESLIST
javac: file not found:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp
(No such file or directory)
javac: file not found:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp
(No such file or directory)
Compiling 5 files for java.annotations.common
Compiling 24 files for java.activation
Error: Could not find or load main class com.sun.tools.javac.Main
gmake[3]: ***
[/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/jdk/modules/java.annotations.common/_the.java.annotations.common_batch]
Error 1
gmake[2]: *** [java.annotations.common-java] Error 1
gmake[2]: *** Waiting for unfinished jobs....
Error: Could not find or load main class com.sun.tools.javac.Main
gmake[3]: ***
[/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/jdk/modules/java.activation/_the.java.activation_batch]
Error 1
gmake[2]: *** [java.activation-java] Error 1
I've been building OpenJDK for years on Linux, but this problem has me
completely baffled. Is there any special advice for building on
Solaris? I expected it would just work.
I'm guessing that this point in the build is the failure:
gmake[3]: Entering directory `/export/home/aph/hs-comp-latest/make'
/usr/bin/mkdir -p
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist
/usr/bin/rm -f
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp
/usr/bin/echo Writing 0 paths to ' >>
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp'
Writing 0 paths to >>
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp
/usr/bin/echo Compiling `/usr/bin/wc
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_GENMODULESLIST_batch.tmp
| /usr/bin/tr -s ' ' | /usr/bin/cut -f 2 -d ' '` files for BUILD_GENMODULESLIST
wc:
/export/home/aph/hs-comp-latest/build/solaris-x86_64-normal-server-slowdebug/make-support/bt_classes_moduleslist/_the.BUILD_G
"Writing 0 paths" must be wrong.
Thanks,
Andrew.