Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to GraalVM 19.3.0 JDK8 #121

Closed
borkdude opened this issue Nov 20, 2019 · 1 comment
Closed

Upgrade to GraalVM 19.3.0 JDK8 #121

borkdude opened this issue Nov 20, 2019 · 1 comment

Comments

@borkdude
Copy link
Collaborator

Fatal error: java.lang.RuntimeException: java.lang.RuntimeException: host C compiler or linker does not seem to work: java.lang.RuntimeException: returned 1

Running command: cc -v -o /Users/borkdude/Dropbox/dev/clojure/babashka/bb -Wl,-no_compact_unwind -Wl,-exported_symbols_list -Wl,/var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953/exported_symbols.list -Wl,-x -arch x86_64 -L/var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953 -L/Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib -L/Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64 /var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953/bb.o /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libffi.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/liblibchelper.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libjvm.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libstrictmath.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libjava.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libzip.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libnet.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libnio.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libsunec.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libsunec.a -lm -Wl,-framework,CoreFoundation -lpthread -lpthread -ldl -lz -lstdc++

Apple LLVM version 10.0.1 (clang-1001.0.46.4)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
 "/Library/Developer/CommandLineTools/usr/bin/ld" -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch x86_64 -macosx_version_min 10.14.0 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o /Users/borkdude/Dropbox/dev/clojure/babashka/bb -L/var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953 -L/Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib -L/Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64 -no_compact_unwind -exported_symbols_list /var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953/exported_symbols.list -x /var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953/bb.o /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libffi.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/liblibchelper.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libjvm.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libstrictmath.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libjava.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libzip.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libnet.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libnio.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libsunec.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libsunec.a -lm -framework CoreFoundation -lpthread -lpthread -ldl -lz -lc++ -L/usr/local/lib -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a
Undefined symbols for architecture x86_64:
  "_Java_java_lang_Thread_countStackFrames", referenced from:
      ___svm_version_info in bb.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:593)
	at java.util.concurrent.ForkJoinTask.get(ForkJoinTask.java:1005)
	at com.oracle.svm.hosted.NativeImageGenerator.run(NativeImageGenerator.java:462)
	at com.oracle.svm.hosted.NativeImageGeneratorRunner.buildImage(NativeImageGeneratorRunner.java:315)
	at com.oracle.svm.hosted.NativeImageGeneratorRunner.build(NativeImageGeneratorRunner.java:454)
	at com.oracle.svm.hosted.NativeImageGeneratorRunner.main(NativeImageGeneratorRunner.java:115)
Caused by: java.lang.RuntimeException: host C compiler or linker does not seem to work: java.lang.RuntimeException: returned 1

Running command: cc -v -o /Users/borkdude/Dropbox/dev/clojure/babashka/bb -Wl,-no_compact_unwind -Wl,-exported_symbols_list -Wl,/var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953/exported_symbols.list -Wl,-x -arch x86_64 -L/var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953 -L/Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib -L/Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64 /var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953/bb.o /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libffi.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/liblibchelper.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libjvm.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libstrictmath.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libjava.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libzip.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libnet.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libnio.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libsunec.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libsunec.a -lm -Wl,-framework,CoreFoundation -lpthread -lpthread -ldl -lz -lstdc++

Apple LLVM version 10.0.1 (clang-1001.0.46.4)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
 "/Library/Developer/CommandLineTools/usr/bin/ld" -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch x86_64 -macosx_version_min 10.14.0 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o /Users/borkdude/Dropbox/dev/clojure/babashka/bb -L/var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953 -L/Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib -L/Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64 -no_compact_unwind -exported_symbols_list /var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953/exported_symbols.list -x /var/folders/2m/h3cvrr1x4296p315vbk7m32c0000gp/T/SVM-1271629208516728953/bb.o /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libffi.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/liblibchelper.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libjvm.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/svm/clibraries/darwin-amd64/libstrictmath.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libjava.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libzip.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libnet.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libnio.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libsunec.a /Users/borkdude/Downloads/graalvm-ce-java8-19.3.0/Contents/Home/jre/lib/libsunec.a -lm -framework CoreFoundation -lpthread -lpthread -ldl -lz -lc++ -L/usr/local/lib -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/10.0.1/lib/darwin/libclang_rt.osx.a
Undefined symbols for architecture x86_64:
  "_Java_java_lang_Thread_countStackFrames", referenced from:
      ___svm_version_info in bb.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

	at com.oracle.svm.hosted.image.NativeBootImageViaCC.write(NativeBootImageViaCC.java:382)
	at com.oracle.svm.hosted.NativeImageGenerator.doRun(NativeImageGenerator.java:652)
	at com.oracle.svm.hosted.NativeImageGenerator.lambda$run$0(NativeImageGenerator.java:445)
	at java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1386)
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Error: Image build request failed with exit status 1
com.oracle.svm.driver.NativeImage$NativeImageError: Image build request failed with exit status 1
	at com.oracle.svm.driver.NativeImage.showError(NativeImage.java:1482)
	at com.oracle.svm.driver.NativeImage.build(NativeImage.java:1260)
	at com.oracle.svm.driver.NativeImage.performBuild(NativeImage.java:1222)
	at com.oracle.svm.driver.NativeImage.main(NativeImage.java:1181)
@borkdude
Copy link
Collaborator Author

borkdude commented Nov 20, 2019

Generating the JSON for all the method names from Clojure is relatively easy:

;; invoke with: clj -Sdeps '{:deps {cheshire {:mvn/version "RELEASE"}}}' methods.clj <class>
;; where <class> is e.g. java.lang.Thread

(require '[cheshire.core :as cheshire])

(defn public-declared-method? [c m]
  (and (= c (.getDeclaringClass m))
       (not (.getAnnotation m Deprecated))))

(defn public-declared-method-names [c]
  (->> (.getMethods c)
       (keep (fn [m]
               (when (public-declared-method? c m)
                 {:name (.getName m)})) )
       (distinct )))

(def the-class
  (Class/forName (first *command-line-args*)))

(println
 (cheshire/generate-string (public-declared-method-names the-class)))
$ clj -Sdeps '{:deps {cheshire {:mvn/version "RELEASE"}}}' /tmp/methods.clj java.lang.Thread
[{"name":"run"},{"name":"toString"},{"name":"isInterrupted"},{"name":"currentThread"},{"name":"getName"},{"name":"join"},{"name":"getThreadGroup"},{"name":"getStackTrace"},{"name":"holdsLock"},{"name":"checkAccess"},{"name":"dumpStack"},{"name":"yield"},{"name":"setPriority"},{"name":"setDaemon"},{"name":"start"},{"name":"sleep"},{"name":"interrupt"},{"name":"interrupted"},{"name":"isAlive"},{"name":"getPriority"},{"name":"setName"},{"name":"activeCount"},{"name":"enumerate"},{"name":"isDaemon"},{"name":"getContextClassLoader"},{"name":"setContextClassLoader"},{"name":"getAllStackTraces"},{"name":"getId"},{"name":"getState"},{"name":"setDefaultUncaughtExceptionHandler"},{"name":"getDefaultUncaughtExceptionHandler"},{"name":"getUncaughtExceptionHandler"},{"name":"setUncaughtExceptionHandler"}]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant