Building on JDK9 EA build 146/Windows, try #1
Doug Simon
doug.simon at oracle.com
Thu Dec 1 21:16:58 UTC 2016
Hi Raffaello,
I don’t what the cause of the Windows failure could be.
Maybe you could consider trying Bash on Windows (https://msdn.microsoft.com/en-us/commandline/wsl/install_guide) as a workaround/alternative.
-Doug
> On 1 Dec 2016, at 19:02, raffaello.giulietti at supsi.ch wrote:
>
> Hi,
>
> I tried again to build graal-core & truffle on Windows, this time
> against JDK9 EA build 146: unsuccessfully, similar errors.
>
> (The same on Linux works without troubles.)
>
> Without reading the 14613 lines of the mx Python script, what could the
> failure on Windows depend on?
> Which are the assumptions of mx about the OS?
>
>
> Greetings
> Raffaello
>
>
>
>
> On 2016-11-18 21:05, Raffaello Giulietti wrote:
>> Hi guys,
>>
>> I guess few of you usually work on Windows.
>>
>> Nevertheless, since starting with build 143 the JDK 9 EA release now
>> supports JVMCI, I decided to give some tries building a Truffle/Graal
>> environment on Windows 10 (64 bit).
>>
>> ***
>> If you feel this makes no sense at this stage of maturity of both JDK 9
>> and Graal, please let me know.
>> ***
>>
>> The reasoning is that by using JDK 9 with JVMCI, I can avoid the complex
>> and weakly documented procedure to build a JDK with JVMCI from scratch
>> on Windows. The hope is that building only Graal and Truffle, which
>> afaik are pure Java projects, is easier when targeting this platform.
>>
>> So, along with JDK 9b144, I also installed Git
>> (https://git-scm.com/download/win) and Python 2.7
>> (https://www.python.org/downloads/release/python-2712/). Git for Windows
>> comes with a bash and some basic Unix commands.
>>
>> Then, following the instruction for building Graal
>> (https://github.com/graalvm/graal-core), when it comes to the first
>> $mx.cmd build
>> I stumble across a first error about the impossibility of creating a
>> file that already exists (see the 1st trace below)
>>
>> If I insist and immediately issue another
>> $mx.cmd build
>> I now stumble across Java related errors (2nd trace below).
>>
>> I repeated this a couple of times taking care of removing the graal root
>> folder and starting from scratch with the building instructions.
>>
>> If anybody could direct me on what I should look at in more details,
>> that would be a great help. I have no clues and, I confess, not much
>> willingness to delve into the scripts.
>>
>> FYI, here's the java -version
>> java version "9-ea"
>> Java(TM) SE Runtime Environment (build 9-ea+144)
>> Java HotSpot(TM) 64-Bit Server VM (build 9-ea+144, mixed mode)
>>
>> Sorry for the long and boring traces, but I can't decide what's
>> important to you and what's not.
>>
>> Greetings
>> Raffaello
>>
>>
>>
>> 1st trace
>> ---------
>> Compiling com.oracle.mxtool.compilerserver with javac...
>> [C:\Users\Raffaello\graal\mx\mxbuild\java\com.oracle.mxtoo
>> l.compilerserver\bin\com\oracle\mxtool\compilerserver\CompilerDaemon.class
>> does not exist]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> C:\Users\Raffaello\graal\mx\java\com.oracle.mxtool.compilerserver\src\com\oracle\mxtool\compilerserver\JavacDaemon.
>> java:31: warning: [deprecation] newInstance() in Class has been
>> deprecated
>> final Object receiver = javacMainClass.newInstance();
>> ^
>> where T is a type-variable:
>> T extends Object declared in class Class
>> 2 warnings
>> Compiling com.oracle.truffle.api with javac-daemon...
>> [C:\Users\Raffaello\graal\truffle\mxbuild\truffle\com.oracle.
>> truffle.api\bin\com\oracle\truffle\api\Assumption.class does not exist]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api\src\com\oracle\truffle\api\Truffle.java:68:
>> warning : [deprecation] newInstance() in Class has been deprecated
>> return (TruffleRuntime) runtimeClass.newInstance();
>> ^
>> where T is a type-variable:
>> T extends Object declared in class Class
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api\src\com\oracle\truffle\api\nodes\GraphPrintVisitor.
>> java:565: warning: [deprecation] newInstance() in Class has been
>> deprecated
>> return customHandlerClass.newInstance();
>> ^
>> where T is a type-variable:
>> T extends Object declared in class Class
>> 3 warnings
>> Compiling com.oracle.truffle.api.dsl with javac-daemon... [dependency
>> com.oracle.truffle.api updated]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> 1 warning
>> Compiling com.oracle.truffle.api.interop with javac-daemon...
>> [dependency com.oracle.truffle.api updated]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop\src\com\oracle\truffle\api\interop\Message.
>> java:526: warning: [deprecation] newInstance() in Class has been
>> deprecated
>> return (Message) Class.forName(message, false,
>> l).newInstance();
>> ^
>> where T is a type-variable:
>> T extends Object declared in class Class
>> 2 warnings
>> Compiling com.oracle.truffle.api.instrumentation with javac-daemon...
>> [dependency com.oracle.truffle.api updated]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.instrumentation\src\com\oracle\truffle\api\instrume
>> ntation\InstrumentationHandler.java:384: warning: [deprecation]
>> newInstance() in Class has been deprecated
>> wrapper = ((InstrumentableFactory<Node>)
>> factory.newInstance()).createWrapper(instrumentableNode, probe );
>> ^
>> where T is a type-variable:
>> T extends Object declared in class Class
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.instrumentation\src\com\oracle\truffle\api\instrume
>> ntation\InstrumentationHandler.java:759: warning: [deprecation]
>> newInstance() in Class has been deprecated
>> this.instrument = (TruffleInstrument)
>> instrumentClass.newInstance();
>> ^
>> where T is a type-variable:
>> T extends Object declared in class Class
>> 3 warnings
>> Compiling com.oracle.truffle.dsl.processor with javac-daemon...
>> [dependency com.oracle.truffle.api.dsl updated]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> 1 warning
>> Compiling com.oracle.truffle.api.object with javac-daemon... [dependency
>> com.oracle.truffle.api.interop updated]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.object\src\com\oracle\truffle\api\object\Layout.jav
>> a:142: warning: [deprecation] newInstance() in Class has been
>> deprecated
>> bestLayoutFactory = (LayoutFactory) clazz.newInstance();
>> ^
>> where T is a type-variable:
>> T extends Object declared in class Class
>> 2 warnings
>> Compiling com.oracle.truffle.api.object.dsl with javac-daemon...
>> [dependency com.oracle.truffle.api.object updated]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> 1 warning
>> Compiling com.oracle.truffle.object.dsl.processor with javac-daemon...
>> [dependency com.oracle.truffle.api.object.ds l updated]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> 1 warning
>> Archiving TRUFFLE_DSL_PROCESSOR_INTERNAL... [dependency
>> com.oracle.truffle.dsl.processor updated]
>> C:/Users/Raffaello/graal/mx/mx.py:1058: UserWarning: Duplicate name:
>> 'META-INF/services/javax.annotation.processing .Processor'
>> arc.zf.writestr(arcname, contents)
>> C:/Users/Raffaello/graal/mx/mx.py:6654: UserWarning: Duplicate name:
>> 'META-INF/services/javax.annotation.processing .Processor'
>> arc.zf.writestr(arcname, '\n'.join(dist.definedAnnotationProcessors) +
>> '\n')
>> Traceback (most recent call last):
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 14468, in <module>
>> main()
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 14452, in main
>> retcode = c(command_args)
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 9577, in build
>> t.execute()
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 669, in execute
>> self.build()
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 1212, in build
>> self.subject.make_archive()
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 1161, in make_archive
>> self.notify_updated()
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 783, in notify_updated
>> l(self)
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 6656, in
>> _refineAnnotationProcessorServiceConfig
>> arc.zf.writestr(arcname, lp.read(arcname))
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 9976, in __exit__
>> SafeFileCreation.__exit__(self, exc_type, exc_value, traceback)
>> File "C:/Users/Raffaello/graal/mx/mx.py", line 9949, in __exit__
>> os.rename(self.tmpPath, self.path)
>> WindowsError: [Error 183] Cannot create a file when that file already exists
>> java.net.SocketException: Connection reset
>> at
>> java.base/java.net.SocketInputStream.read(SocketInputStream.java:209)
>> at
>> java.base/java.net.SocketInputStream.read(SocketInputStream.java:141)
>> at
>> java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
>> at
>> java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
>> at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
>> at
>> java.base/java.io.InputStreamReader.read(InputStreamReader.java:185)
>> at java.base/java.io.BufferedReader.fill(BufferedReader.java:161)
>> at
>> java.base/java.io.BufferedReader.readLine(BufferedReader.java:325)
>> at
>> java.base/java.io.BufferedReader.readLine(BufferedReader.java:390)
>> at
>> com.oracle.mxtool.compilerserver.CompilerDaemon$Connection.run(CompilerDaemon.java:133)
>> at
>> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:514)
>> at
>> java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
>> at
>> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1161)
>> at
>> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>> at java.base/java.lang.Thread.run(Thread.java:844)
>>
>>
>>
>>
>>
>>
>>
>> 2nd trace
>> ---------
>> Compiling com.oracle.truffle.api.interop.java with javac-daemon...
>> [C:\Users\Raffaello\graal\truffle\mxbuild\truffle\com.oracle.truffle.api.interop.java\bin\com\oracle\truffle\api\interop\java\ArrayWriteNode.class
>> does not exist]
>> warning: [options] bootstrap class path not set in conjunction with
>> -source 1.7
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop.java\src\com\oracle\truffle\api\interop\java\JavaObject.java:44:
>> error: cannot find symbol
>> return JavaObjectMessageResolutionForeign.createAccess();
>> ^
>> symbol: variable JavaObjectMessageResolutionForeign
>> location: class JavaObject
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop.java\src\com\oracle\truffle\api\interop\java\JavaFunctionMessageResolution.java:62:
>> error: cannot find symbol
>> this.toJava[i] = ToJavaNodeGen.create();
>> ^
>> symbol: variable ToJavaNodeGen
>> location: class DoExecuteNode
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop.java\src\com\oracle\truffle\api\interop\java\JavaFunctionObject.java:47:
>> error: cannot find symbol
>> return JavaFunctionMessageResolutionForeign.createAccess();
>> ^
>> symbol: variable JavaFunctionMessageResolutionForeign
>> location: class JavaFunctionObject
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop.java\src\com\oracle\truffle\api\interop\java\JavaInterop.java:151:
>> error: cannot find symbol
>> RootNode root = new TemporaryConvertRoot(TruffleLanguage.class,
>> ToJavaNodeGen.create(), foreignObject, type);
>> ^
>> symbol: variable ToJavaNodeGen
>> location: class JavaInterop
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop.java\src\com\oracle\truffle\api\interop\java\JavaInterop.java:257:
>> error: cannot find symbol
>> RootNode root = new TemporaryConvertRoot(TruffleLanguage.class,
>> ToJavaNodeGen.create(), function, functionalType);
>> ^
>> symbol: variable ToJavaNodeGen
>> location: class JavaInterop
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop.java\src\com\oracle\truffle\api\interop\java\JavaObjectMessageResolution.java:177:
>> error: cannot find symbol
>> @Child private ArrayReadNode read = ArrayReadNodeGen.create();
>> ^
>> symbol: variable ArrayReadNodeGen
>> location: class ReadFieldNode
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop.java\src\com\oracle\truffle\api\interop\java\JavaObjectMessageResolution.java:222:
>> error: cannot find symbol
>> @Child private ToJavaNode toJava = ToJavaNodeGen.create();
>> ^
>> symbol: variable ToJavaNodeGen
>> location: class WriteFieldNode
>> C:\Users\Raffaello\graal\truffle\truffle\com.oracle.truffle.api.interop.java\src\com\oracle\truffle\api\interop\java\JavaObjectMessageResolution.java:250:
>> error: cannot find symbol
>> @Child private ArrayWriteNode write = ArrayWriteNodeGen.create();
>> ^
>> symbol: variable ArrayWriteNodeGen
>> location: class WriteFieldNode
>> 8 errors
>> 1 warning
>>
>
More information about the graal-dev
mailing list