EmergentOrder/onnx-scala

Errors When Building Project

samdow opened this issue ยท 5 comments

When I clone the project and try to build it using sbt +publishLocal as in the README, I get the following errors:

[error] (coreJS / Compile / compileIncremental) java.lang.StackOverflowError
[error] (coreJVM / Compile / compileIncremental) java.lang.StackOverflowError
[error] (coreNative / Compile / compileIncremental) java.lang.StackOverflowError
[error] (coreDottyJVM / update) sbt.librarymanagement.ResolveException: unresolved dependency: org.emergentorder.onnx#onnx-scala-common_0.10;1.3.0-0.1.0-SNAPSHOT: not found

Any suggestions on how to fix this would be appreciated!

First step, I've updated the README to first suggest sbt publishLocal without the +, which signifies cross-build (in our case, build against all of Scala 2.11, 2.12, 2.13 Milestone, and Dotty/3.0, where possible).
The default build doesn't need to include all of those possibilities.

As for the issue with the cross-build you found, I can't reproduce the StackoverflowError on my machine.

Try adding export SBT_OPTS="-XX:+CMSClassUnloadingEnabled -Xmx28G -Xss8M -XX:MaxMetaspaceSize=1024M" to your ~/.bashrc or Mac profile file or your OS's equivalent.

Or, if that doesn't work, try sbt -mem 12288 publishLocal.

Please let me know if these resolve your issue.

I think the dependency error is a consequence of the StackoverflowError.

Thanks for your interest in the project! A working backend is coming soon.
To follow progress on the underlying Java wrapper to nGraph see: bytedeco/javacpp-presets#642

Actually, I didn't delete my ivy cache before testing just now, will do that to see if I get the dependency error.

Ok, I can reproduce the dependency error now. It looks you need to do the default build first, and then the cross-build, in order to not get the error. I'll fix this so you can invoke the cross-build on its own.

Thanks for the quick reply and for building the project! I had some issues with the dependency with the default build because I think only the snapshot for JavaCPP 1.4.3 is released (it worked if I downgraded the sbt to use 1.4.3 instead of 1.4.4). I ended up downloading 1.4.4 and building from source, figuring that you've been contributing so much to it, it's probably necessary. Figured I would just note this if someone else runs into this issue while building. Looking forward to playing around with the project! Thanks for your help!

Good point; I just noticed that it no longer worked on my machine with 1.4.4. 1.4.3 is actually good enough for now, so I'll switch to use that here, for now.