For some reason jogl is throwing an "InvocationTargetException" with no further clues as to what the problem is.
With a bit of jiggery pokery I have the following stack trace... Thread=Thread[thread applet-com/myapp/load/MyApp.class-1,4,http://zenny-x11.home/play/-threadGroup] java.lang.UnsatisfiedLinkError: Can't load library: C:\Users\Penny\Desktop\gluegen-rt.dll java.lang.ClassLoader.loadLibrary(-1) java.lang.Runtime.load0(-1) java.lang.System.load(-1) com.jogamp.common.jvm.JNILibLoaderBase.loadLibraryInternal(468) com.jogamp.common.jvm.JNILibLoaderBase.access$000(63) com.jogamp.common.jvm.JNILibLoaderBase$DefaultAction.loadLibrary(94) com.jogamp.common.jvm.JNILibLoaderBase.loadLibrary(332) com.jogamp.common.os.DynamicLibraryBundle$GlueJNILibLoader.loadLibrary(390) com.jogamp.common.os.Platform$1.run(210) java.security.AccessController.doPrivileged(-2) com.jogamp.common.os.Platform.<clinit>(173) javax.media.opengl.GLProfile.<clinit>(82) com.ardor3d.framework.jogl.CapsUtil.getProfile(24) com.ardor3d.framework.jogl.CapsUtil.getCapsForSettings(52) com.ardor3d.framework.jogl.CapsUtil.getCapsForSettings(35) com.ardor3d.framework.jogl.JoglNewtAwtCanvas.<init>(41) com.ardor3d.framework.jogl.JoglNewtAwtCanvas.<init>(36) com.myapp.load.Test.run(21) com.myapp.load.MyApp.start(81) com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.start(-1) sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(-1) java.lang.Thread.run(-1) Ok, fine I can rebuild my own version of JOGL and rewrite the code so I ensure it finds the files in the right place. The files should have already been loaded but for some reason not. To build JOGL I need Android but can I find the appropriate jar file?? Please help. What other jar files will I need? thanks I do not use eclipse or github. I just need the jar libraries to put into my classpath. Many Thanks |
hiya,
basically my plan to get to the location on my problem is to download jogamp-all-platforms.7z and extract the source code and remake the libraries so I can perform stack trace and modify the bits to suit my implementation. However, it is apparent that there are numerous dependencies. I can use the premade library of guava as it seems to work ok. I cannot make my own build of gluegen either because of dependencies. I have managed to remake antlr but the jogl and gluegen appear to require a different version than the current one so many errors are caused in trying to find antlr classes. why aren't the dependency library jars included in jogamp-all-platforms.7z? or why isn't there a clear list and a link to attain them? please help penny |
Administrator
|
On 12/03/2013 05:33 PM, Penny [via jogamp] wrote:
> hiya, > > basically my plan to get to the location on my problem is to download > jogamp-all-platforms.7z and extract the source code and remake the libraries > so I can perform stack trace and modify the bits to suit my implementation. > > However, it is apparent that there are numerous dependencies. > > I can use the premade library of guava as it seems to work ok. > > I cannot make my own build of gluegen either because of dependencies. > > I have managed to remake antlr but the jogl and gluegen appear to require a > different version than the current one so many errors are caused in trying to > find antlr classes. > > why aren't the dependency library jars included in jogamp-all-platforms.7z? or > why isn't there a clear list and a link to attain them? > ~Sven signature.asc (911 bytes) Download Attachment |
Thank you for your help.
I have followed that guide but I have a problem. It seems ant cannot find gcc. In the yypkg documentation it says the installer doesn't set the system path. I have tried appending the path with D:\yypkg_i686\bin but it didn't work. I cannot seem to find any documentation on how to allow ant to recognise gcc or what the path should be correctly set to. I would really appreciate a solution thanks. Regards Penny here is the output... Buildfile: D:\JAVA\JOGL_BUILD\git\gluegen\make\build.xml jogamp.env.validation: [echo] ant.version Apache Ant(TM) version 1.9.2 compiled on July 8 2013 [echo] ant.java.version 1.7 [echo] java.version 1.7.0_25 [echo] java.home C:\Program Files\Java\jdk1.7.0_25\jre [echo] jvmJava.exe C:\Program Files\Java\jdk1.7.0_25\jre/bin/java [echo] jvmJava7.exe ${jvmJava7.exe} jogamp.env.init: [echo] jogamp.jar.codebase [echo] jogamp.version 2.1.3-rc-20131203 [echo] jogamp.version.int 0914017 [echo] junit.is.disabled ${junit.is.disabled} [echo] target.user.set ${target.user.set} [echo] target.sourcelevel 1.7 [echo] target.targetlevel 1.7 [echo] target.rt.jar C:\Program Files\Java\jdk1.7.0_25\jre/lib/rt.jar [echo] host.sourcelevel 1.7 [echo] host.targetlevel 1.7 [echo] host.rt.jar C:\Program Files\Java\jdk1.7.0_25\jre/lib/rt.jar [echo] javacdebug true [echo] javacdebuglevel source,lines [echo] javac.memorymax 1024m [echo] build.archiveon ${build.archiveon} [echo] build.node.name local [echo] android.version 9 [echo] junit.run.arg0 -Djunit.run.arg0=dummy [echo] junit.run.arg1 -Djunit.run.arg1=dummy [echo] macosx.sdkroot ${macosx.sdkroot} gluegen.properties.load.user: [echo] Loaded C:\Users\Penny/gluegen.properties. [echo] gcc.compat.compiler=gcc [echo] antlr.jar=../make/lib/antlr.jar [echo] junit.jar=../make/lib/junit.jar [echo] win32.c.compiler=mingw64 gluegen.cpptasks.detect.os.custom: [echo] gluegen.cpptasks.detect.os.custom: NOP done gluegen.cpptasks.initialize: [echo] os.name=Windows 7 [echo] os.version=6.1 [echo] os.arch=amd64 [echo] c.compiler.debug=false [echo] c.compiler.use-debug=${c.compiler.use-debug} [echo] c.compiler.optimise=none gluegen.cpptasks.detect.os.1: gluegen.cpptasks.detect.os.refine: [echo] isI386=${isI386} [echo] isAMD64=true [echo] is64Bit=true [echo] isAbiEabiGnuArmel=${isAbiEabiGnuArmel} [echo] isAbiEabiGnuArmhf=${isAbiEabiGnuArmhf} [echo] jvmDataModel32Bit=${jvmDataModel32Bit} [echo] jvmDataModel64Bit=${jvmDataModel64Bit} [echo] jvmDataModel.arg=-Djnlp.no.jvm.data.model.set=true [echo] FreeBSD=${isFreeBSD} [echo] FreeBSDX86=${isFreeBSDX86} [echo] FreeBSDAMD64=${isFreeBSDAMD64} [echo] HPUX=${isHPUX} [echo] IA64=${isIA64} [echo] Android=${isAndroid} [echo] AndroidARMv6=${isAndroidARMv6} [echo] AndroidARMv6Armel=${isAndroidARMv6Armel} [echo] AndroidARMv6Armhf=${isAndroidARMv6Armhf} [echo] Linux=${isLinux} [echo] LinuxAMD64=${isLinuxAMD64} [echo] LinuxIA64=${isLinuxIA64} [echo] LinuxX86=${isLinuxX86} [echo] LinuxARMv6=${isLinuxARMv6} [echo] LinuxARMv6Armel=${isLinuxARMv6Armel} [echo] LinuxARMv6Armhf=${isLinuxARMv6Armhf} [echo] LinuxAlpha=${isLinuxAlpha} [echo] LinuxHppa=${isLinuxHppa} [echo] LinuxMips=${isLinuxMips} [echo] LinuxMipsel=${isLinuxMipsel} [echo] LinuxPpc=${isLinuxPpc} [echo] Linuxs390=${isLinuxs390} [echo] Linuxs390x=${isLinuxs390x} [echo] LinuxSparc=${isLinuxSparc} [echo] OS X=${isOSX} [echo] OS X PPC=${use.macosppc} [echo] OS X x32=${use.macosx32} [echo] OS X x64=${use.macosx64} [echo] Solaris=${isSolaris} [echo] Solaris32Bit=${isSolaris32Bit} [echo] Solaris64Bit=${isSolaris64Bit} [echo] SolarisSparc=${isSolarisSparc} [echo] SolarisSparcv9=${isSolarisSparcv9} [echo] SolarisAMD64=${isSolarisAMD64} [echo] SolarisX86=${isSolarisX86} [echo] Unix=${isUnix} [echo] Windows=true [echo] X11=${isX11} [echo] os=Windows 7 [echo] os=6.1 [echo] arch=amd64 gluegen.cpptasks.detect.os.freebsd.amd64: gluegen.cpptasks.detect.os.freebsd.x86: gluegen.cpptasks.detect.os.freebsd: gluegen.cpptasks.detect.os.hpux: gluegen.cpptasks.detect.os.linux.amd64: gluegen.cpptasks.detect.os.linux.ia64: gluegen.cpptasks.detect.os.linux.x86: gluegen.cpptasks.detect.os.linux.armv6.armel: gluegen.cpptasks.detect.os.linux.armv6.armhf: gluegen.cpptasks.detect.os.android.armv6.armel: gluegen.cpptasks.detect.os.android.armv6.armhf: gluegen.cpptasks.detect.os.linux.alpha: gluegen.cpptasks.detect.os.linux.hppa: gluegen.cpptasks.detect.os.linux.mips: gluegen.cpptasks.detect.os.linux.mipsel: gluegen.cpptasks.detect.os.linux.ppc: gluegen.cpptasks.detect.os.linux.s390: gluegen.cpptasks.detect.os.linux.s390x: gluegen.cpptasks.detect.os.linux.sparc: gluegen.cpptasks.detect.os.linux: gluegen.cpptasks.detect.os.osx: gluegen.cpptasks.detect.os.solaris.sparc: gluegen.cpptasks.detect.os.solaris.sparcv9: gluegen.cpptasks.detect.os.solaris.amd64: gluegen.cpptasks.detect.os.solaris.x86: gluegen.cpptasks.detect.os.solaris: gluegen.cpptasks.detect.os.unix: gluegen.cpptasks.detect.os.windows.amd64: gluegen.cpptasks.detect.os.windows.x86: gluegen.cpptasks.detect.os.windows: gluegen.cpptasks.detect.os.2: [echo] os and arch: windows-amd64 gluegen.cpptasks.detect.os: setup.excludes.nsig: init.base: init.android: init: java.class.path.validate: validate: gluegen.build.check.android-launcher: android-launcher.build: android-launcher.package: gluegen.build.check.java: gluegen.build.java: gluegen.cpptasks.detect.compiler: [echo] gcc.compat.compiler=gcc [echo] GCC=true [echo] CLANG=${isCLANG} [echo] VC6=${isVC6} [echo] VC7=${isVC7} [echo] VC8=${isVC8} [echo] VC8_X64=${isVC8_X64} [echo] VC9=${isVC9} [echo] MingW=true [echo] MingW32=${isMingW32} [echo] MingW64=true setup.java.home.dir.nonmacosx: setup.java.home.dir.macosx: setup.java.home.dir: [echo] java.home.dir C:\Program Files\Java\jdk1.7.0_25\jre/.. [echo] java.includes.dir C:\Program Files\Java\jdk1.7.0_25\jre/../include gluegen.cpptasks.configure.compiler: gluegen.cpptasks.declare.compiler.environment: gluegen.cpptasks.declare.compiler.win32.vc6: gluegen.cpptasks.declare.compiler.win32.vc7: gluegen.cpptasks.declare.compiler.win32.vc8: gluegen.cpptasks.declare.compiler.win32.vc8_x64: gluegen.cpptasks.declare.compiler.win32.vc9: gluegen.cpptasks.declare.compiler.win32.mingw: gluegen.cpptasks.declare.compiler.win64.mingw: [echo] Win64.MingW gluegen.cpptasks.declare.compiler.win32: gluegen.cpptasks.declare.compiler.linux.x86: gluegen.cpptasks.declare.compiler.linux.amd64: gluegen.cpptasks.declare.compiler.linux.ia64: gluegen.cpptasks.declare.compiler.linux.armv6: gluegen.cpptasks.declare.compiler.linux.alpha: gluegen.cpptasks.declare.compiler.linux.hppa: gluegen.cpptasks.declare.compiler.linux.mips: gluegen.cpptasks.declare.compiler.linux.mipsel: gluegen.cpptasks.declare.compiler.linux.ppc: gluegen.cpptasks.declare.compiler.linux.s390: gluegen.cpptasks.declare.compiler.linux.s390x: gluegen.cpptasks.declare.compiler.linux.sparc: gluegen.cpptasks.declare.compiler.linux: gluegen.cpptasks.declare.compiler.solaris32: gluegen.cpptasks.declare.compiler.solaris.sparcv9: gluegen.cpptasks.declare.compiler.solaris.amd64: gluegen.cpptasks.declare.compiler.solaris: gluegen.cpptasks.declare.compiler.macosx: gluegen.cpptasks.declare.compiler.freebsd.x86: gluegen.cpptasks.declare.compiler.freebsd.amd64: gluegen.cpptasks.declare.compiler.freebsd: gluegen.cpptasks.declare.compiler.hpux: gluegen.cpptasks.declare.compiler: [echo] java.lib.dir.platform: C:\Program Files\Java\jdk1.7.0_25\jre/../jre/bin gluegen.cpptasks.setup.compiler: declare.win32.vc6: declare.win32.vc7: declare.win32.vc8: declare.win32.vc8_x64: declare.win32.vc9: declare.win32.mingw: declare.win64.mingw: [echo] Win64.MingW declare.win32: declare.linux.x86: declare.linux.amd64: declare.linux.ia64: declare.linux.hppa: declare.linux.mips: declare.linux.mipsel: declare.linux.ppc: declare.linux.s390: declare.linux.s390x: declare.linux.sparc: declare.linux.armv6: declare.linux: declare.android: declare.solaris32: declare.solarisSparcv9: declare.solarisAMD64: declare.solaris: declare.macosx: declare.freebsd.x86: declare.freebsd.amd64: declare.freebsd: declare.hpux: c.configure: gluegen.build.c: jogamp.env.validation: [echo] ant.version Apache Ant(TM) version 1.9.2 compiled on July 8 2013 [echo] ant.java.version 1.7 [echo] java.version 1.7.0_25 [echo] java.home C:\Program Files\Java\jdk1.7.0_25\jre [echo] jvmJava.exe C:\Program Files\Java\jdk1.7.0_25\jre/bin/java [echo] jvmJava7.exe ${jvmJava7.exe} jogamp.env.init: [echo] jogamp.jar.codebase [echo] jogamp.version 2.1.3-rc-20131203 [echo] jogamp.version.int 0914017 [echo] junit.is.disabled ${junit.is.disabled} [echo] target.user.set true [echo] target.sourcelevel 1.7 [echo] target.targetlevel 1.7 [echo] target.rt.jar C:\Program Files\Java\jdk1.7.0_25\jre/lib/rt.jar [echo] host.sourcelevel 1.7 [echo] host.targetlevel 1.7 [echo] host.rt.jar C:\Program Files\Java\jdk1.7.0_25\jre/lib/rt.jar [echo] javacdebug true [echo] javacdebuglevel source,lines [echo] javac.memorymax 1024m [echo] build.archiveon ${build.archiveon} [echo] build.node.name local [echo] android.version 9 [echo] junit.run.arg0 -Djunit.run.arg0=dummy [echo] junit.run.arg1 -Djunit.run.arg1=dummy [echo] macosx.sdkroot ${macosx.sdkroot} gluegen.properties.load.user: gluegen.cpptasks.detect.os.custom: [echo] gluegen.cpptasks.detect.os.custom: NOP done gluegen.cpptasks.initialize: [echo] os.name=Windows 7 [echo] os.version=6.1 [echo] os.arch=amd64 [echo] c.compiler.debug=false [echo] c.compiler.use-debug=${c.compiler.use-debug} [echo] c.compiler.optimise=none gluegen.cpptasks.detect.os.1: gluegen.cpptasks.detect.os.refine: gluegen.cpptasks.detect.os.freebsd.amd64: gluegen.cpptasks.detect.os.freebsd.x86: gluegen.cpptasks.detect.os.freebsd: gluegen.cpptasks.detect.os.hpux: gluegen.cpptasks.detect.os.linux.amd64: gluegen.cpptasks.detect.os.linux.ia64: gluegen.cpptasks.detect.os.linux.x86: gluegen.cpptasks.detect.os.linux.armv6.armel: gluegen.cpptasks.detect.os.linux.armv6.armhf: gluegen.cpptasks.detect.os.android.armv6.armel: gluegen.cpptasks.detect.os.android.armv6.armhf: gluegen.cpptasks.detect.os.linux.alpha: gluegen.cpptasks.detect.os.linux.hppa: gluegen.cpptasks.detect.os.linux.mips: gluegen.cpptasks.detect.os.linux.mipsel: gluegen.cpptasks.detect.os.linux.ppc: gluegen.cpptasks.detect.os.linux.s390: gluegen.cpptasks.detect.os.linux.s390x: gluegen.cpptasks.detect.os.linux.sparc: gluegen.cpptasks.detect.os.linux: gluegen.cpptasks.detect.os.osx: gluegen.cpptasks.detect.os.solaris.sparc: gluegen.cpptasks.detect.os.solaris.sparcv9: gluegen.cpptasks.detect.os.solaris.amd64: gluegen.cpptasks.detect.os.solaris.x86: gluegen.cpptasks.detect.os.solaris: gluegen.cpptasks.detect.os.unix: gluegen.cpptasks.detect.os.windows.amd64: gluegen.cpptasks.detect.os.windows.x86: gluegen.cpptasks.detect.os.windows: gluegen.cpptasks.detect.os.2: gluegen.cpptasks.detect.os: setup.excludes.nsig: init.base: init.android: init: java.class.path.validate: validate: gluegen.cpptasks.detect.compiler: [echo] gcc.compat.compiler=gcc [echo] GCC=true [echo] CLANG=${isCLANG} [echo] VC6=${isVC6} [echo] VC7=${isVC7} [echo] VC8=${isVC8} [echo] VC8_X64=${isVC8_X64} [echo] VC9=${isVC9} [echo] MingW=true [echo] MingW32=${isMingW32} [echo] MingW64=true setup.java.home.dir.nonmacosx: setup.java.home.dir.macosx: setup.java.home.dir: [echo] java.home.dir C:\Program Files\Java\jdk1.7.0_25\jre/.. [echo] java.includes.dir C:\Program Files\Java\jdk1.7.0_25\jre/../include gluegen.cpptasks.configure.compiler: gluegen.cpptasks.declare.compiler.environment: gluegen.cpptasks.declare.compiler.win32.vc6: gluegen.cpptasks.declare.compiler.win32.vc7: gluegen.cpptasks.declare.compiler.win32.vc8: gluegen.cpptasks.declare.compiler.win32.vc8_x64: gluegen.cpptasks.declare.compiler.win32.vc9: gluegen.cpptasks.declare.compiler.win32.mingw: gluegen.cpptasks.declare.compiler.win64.mingw: [echo] Win64.MingW gluegen.cpptasks.declare.compiler.win32: gluegen.cpptasks.declare.compiler.linux.x86: gluegen.cpptasks.declare.compiler.linux.amd64: gluegen.cpptasks.declare.compiler.linux.ia64: gluegen.cpptasks.declare.compiler.linux.armv6: gluegen.cpptasks.declare.compiler.linux.alpha: gluegen.cpptasks.declare.compiler.linux.hppa: gluegen.cpptasks.declare.compiler.linux.mips: gluegen.cpptasks.declare.compiler.linux.mipsel: gluegen.cpptasks.declare.compiler.linux.ppc: gluegen.cpptasks.declare.compiler.linux.s390: gluegen.cpptasks.declare.compiler.linux.s390x: gluegen.cpptasks.declare.compiler.linux.sparc: gluegen.cpptasks.declare.compiler.linux: gluegen.cpptasks.declare.compiler.solaris32: gluegen.cpptasks.declare.compiler.solaris.sparcv9: gluegen.cpptasks.declare.compiler.solaris.amd64: gluegen.cpptasks.declare.compiler.solaris: gluegen.cpptasks.declare.compiler.macosx: gluegen.cpptasks.declare.compiler.freebsd.x86: gluegen.cpptasks.declare.compiler.freebsd.amd64: gluegen.cpptasks.declare.compiler.freebsd: gluegen.cpptasks.declare.compiler.hpux: gluegen.cpptasks.declare.compiler: [echo] java.lib.dir.platform: C:\Program Files\Java\jdk1.7.0_25\jre/../jre/bin gluegen.cpptasks.setup.compiler: declare.win32.vc6: declare.win32.vc7: declare.win32.vc8: declare.win32.vc8_x64: declare.win32.vc9: declare.win32.mingw: declare.win64.mingw: [echo] Win64.MingW declare.win32: declare.linux.x86: declare.linux.amd64: declare.linux.ia64: declare.linux.hppa: declare.linux.mips: declare.linux.mipsel: declare.linux.ppc: declare.linux.s390: declare.linux.s390x: declare.linux.sparc: declare.linux.armv6: declare.linux: declare.android: declare.solaris32: declare.solarisSparcv9: declare.solarisAMD64: declare.solaris: declare.macosx: declare.freebsd.x86: declare.freebsd.amd64: declare.freebsd: declare.hpux: c.configure: gluegen.build.c.impl: [echo] Output lib name = gluegen-rt -> gluegen-rt.dll [echo] Compiling src/native/windows/*.c src/native/common/*.c [echo] user.dir=D:\JAVA\JOGL_BUILD\git\gluegen\make [cc] 6 total files to be compiled. BUILD FAILED D:\JAVA\JOGL_BUILD\git\gluegen\make\build.xml:453: The following error occurred while executing this line: D:\JAVA\JOGL_BUILD\git\gluegen\make\build.xml:478: Could not launch gcc: java.io.IOException: Cannot run program "gcc" (in directory "D:\JAVA\JOGL_BUILD\git\gluegen\build\obj"): CreateProcess error=2, The system cannot find the file specified Total time: 5 seconds |
The problem might be that I haven't Ming installed. For some reason I cannot download the latest version via the guide link.
|
Administrator
|
On 12/03/2013 09:51 PM, Penny [via jogamp] wrote:
> The problem might be that I haven't Ming installed. For some reason I cannot > download the latest version via the guide link. > I just checked the sourceforge links .. all seem to work, i.e.: http://mingw-w64.sourceforge.net/ http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/64-bit/threads-win32/sjlj/ http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/32-bit/threads-win32/sjlj/ .. etc .. ~Sven signature.asc (911 bytes) Download Attachment |
hiya, thanks for your help again.
The link that doesn't work is https://sourceforge.net/projects/mingwbuilds/files/mingw-builds-install/mingw-builds-install.exe/download and it doesn't work in FF or IE. I have downloaded x64-4.8.1-release-win32-sjlj-rev5.7z I tried unpacking to D:\mingw64 and I set the system path to ;D:\mingw64\bin;D:\mingw64\lib as the very scant guide suggests but the ant compile failed. I am now at a dead end again. Please help many thanks. gluegen.build.c.impl: [echo] Output lib name = gluegen-rt -> gluegen-rt.dll [echo] Compiling src/native/windows/*.c src/native/common/*.c [echo] user.dir=D:\JAVA\JOGL_BUILD\git\gluegen\make [cc] 6 total files to be compiled. [cc] gcc: error: CreateProcess: No such file or directory BUILD FAILED D:\JAVA\JOGL_BUILD\git\gluegen\make\build.xml:453: The following error occurred while executing this line: D:\JAVA\JOGL_BUILD\git\gluegen\make\build.xml:478: gcc failed with return code 1 Total time: 6 seconds |
Administrator
|
On 12/04/2013 03:12 PM, Penny [via jogamp] wrote:
> hiya, thanks for your help again. > > The link that doesn't work is > > https://sourceforge.net/projects/mingwbuilds/files/mingw-builds-install/mingw-builds-install.exe/download > > and it doesn't work in FF or IE. > > I have downloaded > > x64-4.8.1-release-win32-sjlj-rev5.7z > > I tried unpacking to D:\mingw64 and I set the system path to > ;D:\mingw64\bin;D:\mingw64\lib as the very scant guide suggests but the ant > compile failed. I am now at a dead end again. Please help many thanks. > > gluegen.build.c.impl: > [echo] Output lib name = gluegen-rt -> gluegen-rt.dll > [echo] Compiling src/native/windows/*.c src/native/common/*.c > [echo] user.dir=D:\JAVA\JOGL_BUILD\git\gluegen\make > [cc] 6 total files to be compiled. > [cc] gcc: error: CreateProcess: No such file or directory > > BUILD FAILED > D:\JAVA\JOGL_BUILD\git\gluegen\make\build.xml:453: The following error > occurred while executing this line: > D:\JAVA\JOGL_BUILD\git\gluegen\make\build.xml:478: gcc failed with return code 1 > as can be found in 'jogl/scripts/make.jogl.all.win64.bat' +++ set THISDIR="C:\JOGL" set J2RE_HOME=c:\jre1.7.0_45_x64 set JAVA_HOME=c:\jdk1.7.0_45_x64 set ANT_PATH=C:\apache-ant-1.8.2 set PATH=%JAVA_HOME%\bin;%ANT_PATH%\bin;c:\mingw64\bin;%PATH% REM OPTIONAL set SOURCE_LEVEL=1.6 set TARGET_LEVEL=1.6 set TARGET_RT_JAR=c:\jre1.6.0_30\lib\rt.jar set JOGAMP_JAR_CODEBASE=Codebase: *.goethel.localnet ant -Dc.compiler.debug=true > make.jogl.all.win64.log 2>&1 +++ It has to be invoked as a BAT file, i.e. as a windows process, not cygwin or anything like that .. from gluegen/make: invoke: scripts/make.jogl.all.win64.bat from jogl/make: invoke scripts/make.jogl.all.win64.bat Maybe you need to remove 'D:\mingw64\lib' from your PATH ? If 'D:\mingw64\bin' is in your PATH, you should be able to invoke gcc from the commandline, and it shall work .. ~Sven signature.asc (911 bytes) Download Attachment |
its a bit confusing.
I only wish to compile a few java classes. never been this complicated b4. am I right in guessing I need to alter THISDIR, J2RE_HOME and ANT_PATH to suit my install? to be honest I am thinking of modifying the jogl code and get rid of the ANT and gluegen dependencies. Can this be done? My initial design was to create a browser applet that uses the jogl jars but I am getting a targetinvocationexception. To this I thought I would move all the jogl and glueden classes to my application jar but it then cant find the dlls or platform dependent code. ok that failed so as I have the jogl and gluegen source code I thought I would recompile the classes so I could change the path appropriately to it could find the platform natives but now after installing a load of software I didn't want I still cant compile the code. why is this so unnecessarily complicated??? why cant I just put ant, gluegen and jogl jars into my classpath and compile my project??? why cant I just move the gluegen and jogl classes into my project jar and it still work??? why has this been made so complicated???? |
I put D:\Mingw64\lib into my path because that is what the install guide said for me to do.
|
I don't want ANT installed.
I don't want Ming ot Github installed. I just wish to compile gluegen and jogl using my stariaght forward and simple javac compiler. why cant I do something so simply??? |
So my goal is to get jogl to compile only using javac.
At the source code I will HACK and HACK and HACK and HACK until it compiles :) Thank you |
Administrator
|
In reply to this post by Penny
Come down to Earth, JOGL 1 was a lot more complicated to build. Personally, I just get JOGL, JOAL and GlueGen from Github with EGit in Eclipse 4 and the Ant build runs automatically. Just follow the HowToBuild and don't try to customize it by any mean. If we could do something more simple, we would. Dropping Ant won't drive anything easier. Edit.: Applets are a pure waste of time in my humble opinion. Oracle modifies the security policy so often that I refuse using them in production, it has become too much dangerous.
Julien Gouesse | Personal blog | Website
|
Administrator
|
In reply to this post by Penny
I'm not sure this can work, because the source code for JOGL is more than just Java code. The build process invokes gluegen to convert the OpenGL header files to Java interfaces. Then it uses javah to convert those interfaces to C header and stub source files. Then those C files are compiled with gcc so JOGL can call OpenGL via JNI. Then finally the pure Java source can be compiled with javac at the end of the process. This process could be reduced if we used JNA, but that didn't exist when JOGL started years ago, and I've heard it's slower than JNI (I don't have personal experience of this, though). But if you wanted, you could convert JOGL to use JNA and see how it performs :) So as gouessej says, if there were an easier way, we would do it -- within current constraints, this is about as easy as it gets. Just about any large project has some non-trivial build process that's not so easy to just replace with an alternative. |
Thanks for your replies.
Yes I am very frustrated and it looks like my project is in the bin unless I can resolve the issue I have. It works fine using javaw. It used to work fine using an applet within a browser. The whole point of my project is that it works from an applet browser. If I am unable to do that then it goes in the bin and the last 3 years of my life have been completely wasted. For the life of me I cannot resolve the problem of getting my applets to load the natives. Is there some way I can tell gluegen and jogl where to find the native. Ideally I would like to place then inside the main gluegen/jogl jar and inform those packages where to find them. In fact that is all I wanted to achieve when I set about recompiling my own implementation. Please help many thanks |
Administrator
|
Have you looked at how the test applets do it? Check at http://jogamp.org/deployment/jogamp-current/jogl-test-applets.html, there are many examples. There can be some permission issues with some browsers and OSes, but it should be broadly workable. There are also many examples in the forums of people talking about how they've resolved applet problems.
|
Administrator
|
In reply to this post by Penny
Actually, there are still a few things preventing the merge of all JARs into a single one, I still have to keep the native libraries in separate JARs but it works when they are in the same directory.
I hope that you plan to pay for a trusted certificate because it's going to become mandatory :( Edit.: I agree with Wade. There is probably a solution that doesn't require to modify and rebuild JogAmp as several people already succeeded in running applets. Edit.2: Use the automatic extraction of native libraries instead of using DLLs directly.
Julien Gouesse | Personal blog | Website
|
Hi,
Thanks Wade, the test applets worked fine on your link worked fine. I did a little test... I copied the exact html from one of the test applets and made test.htm in a new directory. I then extracted all of the jars from jogamp-all-platforms.7z into the same directory. I opened the htm in a browser and I had the same error... Could not find gluegen-rt.dll I thought ok maybe there is something on my PC that is causing the error so I did the same on another PC and I had exactly the same error. why does the test in the provided link work yet my own copy not? all of the jars are present in the same directory and untouched. yes gouessej I fully intend to get my own trusted cert but as it costs and only lasts a year I am planning on purchasing closer to when I roll out my project. |
note:my project works fine using javaw.
thank you gouessej - you have help me a lot over the last few years. |
Ok I think I have found the cause of the problem.
I have just successfully run my test using an applet from my page server. The new security requirements caused the problem but it wasn't very helpful of the system just to say "could not find gluegen-rt.dll" cause and effect... #1 because gluegen and jogl are trusted but the original jars are unsigned the applet blocks so I signed them with my self-cert. #2 an error "incorrect codebase" occurred so I modified the manifest file so the codebase included my page server. this seems silly because anyone can change the codebase and repurpose the code... what I was unaware of and what caused me all the trouble is that I modified the manifest codebase after I signed it but resigning it. I thought it was resigning successfully but by chance, 2 mins ago, I noticed the resigning was failing. So instead of the system saying "Theres a mismatch in your signed jar" is just said "couldn't find gluegen-rt.dll" which was really frustrating!!! To overcome the signing failure I hade to delete the SF and DSA from the META-INF directory and then it resigned successfully and low and behold my applet ran successfully from a page served from my web server. I had to do this to jogl-test.jar, gluegen-rt.jar and jogl-all.jar all my other jars are signed without permissions or codebase. Now understanding the cause of this problem I will make these changes to my project and see how I get on. Many thanks to everyone supporting me get to the bottom of this difficult time lol. Regards Penny :) |
Free forum by Nabble | Edit this page |