OpenGL

43 views
Skip to first unread message

mariodpr

unread,
Jul 23, 2008, 1:43:03 PM7/23/08
to codeswarm
Hi,

I'm trying to execute codeswarn with OpenGL support without success.

- I read the RunOpenGL wiki page.
- UseOpenGL=true in sample.config
- export LD_LIBRARY_PATH=path-to-codeswarm/lib

If I try to execute run.sh:
----------------------------------------------------------------------------------------
Error while running applet.
java.lang.RuntimeException: You need to use "Import Library" to add
processing.opengl.PGraphicsOpenGL to your sketch.
at processing.core.PApplet.createGraphics(PApplet.java:1219)
at processing.core.PApplet.size(PApplet.java:990)
at processing.core.PApplet.size(PApplet.java:934)
at code_swarm.setup(code_swarm.java:142)
at processing.core.PApplet.handleDisplay(PApplet.java:1368)
at processing.core.PGraphics.requestDisplay(PGraphics.java:
690)
at processing.core.PApplet.run(PApplet.java:1542)
at java.lang.Thread.run(Thread.java:619)
bye
----------------------------------------------------------------------------------------
If I try to execute ant run:
----------------------------------------------------------------------------------------
[java] java.lang.UnsatisfiedLinkError: no gluegen-rt in
java.library.path
[java] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:
1682)
[java] at java.lang.Runtime.loadLibrary0(Runtime.java:823)
[java] at java.lang.System.loadLibrary(System.java:1030)
[java] at
com.sun.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:
102)
[java] at com.sun.gluegen.runtime.NativeLibLoader.access
$000(NativeLibLoader.java:51)
[java] at com.sun.gluegen.runtime.NativeLibLoader
$1.run(NativeLibLoader.java:70)
[java] at java.security.AccessController.doPrivileged(Native
Method)
[java] at
com.sun.gluegen.runtime.NativeLibLoader.loadGlueGenRT(NativeLibLoader.java:
68)
[java] at
com.sun.gluegen.runtime.NativeLibrary.ensureNativeLibLoaded(NativeLibrary.java:
399)
[java] at
com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:163)
[java] at
com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:129)
[java] at com.sun.opengl.impl.x11.DRIHack.begin(DRIHack.java:
109)
[java] at
com.sun.opengl.impl.x11.X11GLDrawableFactory.<clinit>(X11GLDrawableFactory.java:
99)
[java] at java.lang.Class.forName0(Native Method)
[java] at java.lang.Class.forName(Class.java:169)
[java] at
javax.media.opengl.GLDrawableFactory.getFactory(GLDrawableFactory.java:
111)
[java] at
javax.media.opengl.GLCanvas.chooseGraphicsConfiguration(GLCanvas.java:
520)
[java] at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:
131)
[java] at javax.media.opengl.GLCanvas.<init>(GLCanvas.java:
90)
[java] at
processing.opengl.PGraphicsOpenGL.allocate(PGraphicsOpenGL.java:219)
[java] at processing.core.PGraphics3D.resize(PGraphics3D.java:
244)
[java] at processing.core.PGraphics.<init>(PGraphics.java:
640)
[java] at processing.core.PGraphics3D.<init>(PGraphics3D.java:
220)
[java] at
processing.opengl.PGraphicsOpenGL.<init>(PGraphicsOpenGL.java:104)
[java] at
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[java] at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
39)
[java] at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:
27)
[java] at
java.lang.reflect.Constructor.newInstance(Constructor.java:513)
[java] at processing.core.PApplet.createGraphics(PApplet.java:
1193)
[java] at processing.core.PApplet.size(PApplet.java:990)
[java] at processing.core.PApplet.size(PApplet.java:934)
[java] at code_swarm.setup(code_swarm.java:141)
[java] at processing.core.PApplet.handleDisplay(PApplet.java:
1368)
[java] at
processing.core.PGraphics.requestDisplay(PGraphics.java:690)
[java] at processing.core.PApplet.run(PApplet.java:1542)
[java] at java.lang.Thread.run(Thread.java:619)
[java] Error while running applet.
[java] java.lang.RuntimeException: no gluegen-rt in
java.library.path
[java] at processing.core.PApplet.createGraphics(PApplet.java:
1211)
[java] at processing.core.PApplet.size(PApplet.java:990)
[java] at processing.core.PApplet.size(PApplet.java:934)
[java] at code_swarm.setup(code_swarm.java:141)
[java] at processing.core.PApplet.handleDisplay(PApplet.java:
1368)
[java] at
processing.core.PGraphics.requestDisplay(PGraphics.java:690)
[java] at processing.core.PApplet.run(PApplet.java:1542)
[java] at java.lang.Thread.run(Thread.java:619)
----------------------------------------------------------------------------------------

I try all these things:
- Add ${lib}/gluegen-rt.jar to build.xml
- Add lib/gluegen-rt.jar to run.sh
- Add import processing.opengl.*; to src/code_swarm.java

Any advice on what to do?

Regards,
Mario

Peter Burns

unread,
Jul 26, 2008, 4:02:58 AM7/26/08
to codeswarm
It's not really helpful for you, but the reason you get different
errors between run.sh and 'ant run' is because of a bug in run.sh -
not all of the jars in lib/ are included in the classpath.

See this patch:

diff --git a/run.sh b/run.sh
index 1807b0e..6e927f0 100755
--- a/run.sh
+++ b/run.sh
@@ -48,7 +48,7 @@ if [ ! -f $code_swarm_jar ]; then
fi

# running
-if java -Xmx1000m -classpath dist/code_swarm.jar:lib/core.jar:lib/
xml.jar:lib/vecmath.jar:. code_swarm $params; then
+if java -Xmx1000m -classpath dist/code_swarm.jar:`ls lib/*.jar | tr
'\n' ':'`:. code_swarm $params; then
# always on error due to no "exit buton" on rendering window
echo "bye"
# echo -n "error, press a key to exit"


As far as debugging your problem, could you give:

* the contents of your codeswarm/lib directory
* your platform
* and your java version?
Reply all
Reply to author
Forward
0 new messages