-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
I include JOCL-0.2.0-RC1-SNAPSHOT and JOCLBlast-0.0.1-SNAPSHOT in my Cloajure leiningen project (basically the same as maven, an uses maven repositories and poms etc.)
I start the REPL and:
(import 'org.jocl.CL)
;;org.jocl.CL
(CL/setExceptionsEnabled false)
;;nilSo, JOCL loads and works as always.
But, then:
(import 'org.jocl.blast.CLBlast)
;;org.jocl.blast.CLBlast
(CLBlast/setExceptionsEnabled false)
;;NoClassDefFoundError Could not initialize class org.jocl.blast.CLBlast uncomplicate.neanderthal.examples.guides.tutorial-opencl-test/eval51311 (form-init3160172747902287401.clj:416)CLBlast itself is available on the system and can be loaded from Java:
(System/loadLibrary "clblast")
;;nilAs JOCL works well, I suspect there is some subtle error with JOCLBlast's library loading in exotic class loader setups (such as in Clojure). This is the complete stack trace:
REPL: 432 uncomplicate.neanderthal.examples.guides.tutorial-opencl-test/eval51325
REPL: 432 uncomplicate.neanderthal.examples.guides.tutorial-opencl-test/eval51325
Compiler.java: 6927 clojure.lang.Compiler/eval
Compiler.java: 6890 clojure.lang.Compiler/eval
core.clj: 3105 clojure.core/eval
core.clj: 3101 clojure.core/eval
main.clj: 240 clojure.main/repl/read-eval-print/fn
main.clj: 240 clojure.main/repl/read-eval-print
main.clj: 258 clojure.main/repl/fn
main.clj: 258 clojure.main/repl
interruptible_eval.clj: 100 clojure.tools.nrepl.middleware.interruptible-eval/evaluate/fn
AFn.java: 152 clojure.lang.AFn/applyToHelper
AFn.java: 144 clojure.lang.AFn/applyTo
core.clj: 646 clojure.core/apply
core.clj: 1881 clojure.core/with-bindings*
core.clj: 1881 clojure.core/with-bindings*
RestFn.java: 425 clojure.lang.RestFn/invoke
interruptible_eval.clj: 85 clojure.tools.nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 219 clojure.tools.nrepl.middleware.interruptible-eval/interruptible-eval/fn/fn
interruptible_eval.clj: 190 clojure.tools.nrepl.middleware.interruptible-eval/run-next/fn
AFn.java: 22 clojure.lang.AFn/run
ThreadPoolExecutor.java: 1142 java.util.concurrent.ThreadPoolExecutor/runWorker
ThreadPoolExecutor.java: 617 java.util.concurrent.ThreadPoolExecutor$Worker/run
Thread.java: 745 java.lang.Thread/runThe tooling (I use emacs and emacs-cider for Clojure) recognizes CLBlast class and offers code completion, so the class itself is obviously available in the project, but the problem is in the library loading phase.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels