Downloading and installing JOGL: Difference between revisions

From JogampWiki
Jump to navigation Jump to search
m (Fixed duplicate line.)
(Added description of how to download native JARs)
Line 1: Line 1:
Before you can build a project that uses JOGL [https://jogamp.org/wiki/index.php/Setting_up_a_JogAmp_project_in_your_favorite_IDE in your IDE or on the command line], you'll need to download and install the JOGL JAR files and native libraries (<tt>.dll</tt>/<tt>.so</tt>/<tt>.jnilib</tt> files).
Before you can build a project that uses JOGL [https://jogamp.org/wiki/index.php/Setting_up_a_JogAmp_project_in_your_favorite_IDE in your IDE or on the command line], you'll need to download and install the JOGL JAR files and native JARs or libraries (<tt>.dll</tt>/<tt>.so</tt>/<tt>.jnilib</tt> files).


You have a choice of JOGL versions to download. The [{{SERVER}}/deployment/jogamp-current/archive/ latest stable version] is the safest, but lags behind in features. The [{{SERVER}}/deployment/autobuilds/master/ latest automatic build] contains all checked-in code, but may be failing some tests.
You have a choice of JOGL versions to download. The [{{SERVER}}/deployment/jogamp-current/archive/ latest stable version] is the safest, but lags behind in features. The [{{SERVER}}/deployment/autobuilds/master/ latest automatic build] contains all checked-in code, but may be failing some tests.
Line 40: Line 40:


Note that these automatic builds may not have passed all the regression tests. You can check the test results on the [https://jogamp.org/chuck/ build server] to make sure you're not downloading a broken build.
Note that these automatic builds may not have passed all the regression tests. You can check the test results on the [https://jogamp.org/chuck/ build server] to make sure you're not downloading a broken build.
= Native JARs vs. native libraries =
JOGL uses native libraries to interface with each platform's OpenGL library. You can either download these native libraries wrapped up in JAR files (the "native JARs" option), or you can download them as separate <tt>.dll</tt>/<tt>.so</tt>/<tt>.jnilib</tt> files (the "native libraries" option).
When using native JARs, JOGL automatically unzips the native JAR files at startup into a temporary directory, then loads the resulting native libraries from there. When using native libraries, JOGL just loads them directly from where they sit, with no unzipping.
Using native JARs is usually easiest, since there are fewer files to manage and it allows different platforms' native libraries to coexist in the same directory. Only use the native libraries directly if you need fine control over native library file placement or if your app doesn't have permissions to create temporary directories.


= Unzipping the files =
= Unzipping the files =
Line 52: Line 60:
</pre>
</pre>


Now you may copy the required JARs out of each <tt>jar</tt> folder and the native libraries out of each <tt>lib</tt> folder. For a full desktop installation, here are the files you need:
Now you may copy the required JARs out of each <tt>jar</tt> folder and the native libraries (if you're using them) out of each <tt>lib</tt> folder. For a full desktop installation using native JARs, here are the files you need:
 
{|cellpadding="4" cellspacing="0"
!align="left"|Windows
!align="left"|Linux
!align="left"|Mac
|-
|<tt>gluegen-rt.jar</tt>||<tt>gluegen-rt.jar</tt>||<tt>gluegen-rt.jar</tt>
|-
|<tt>jogl.all.jar</tt>||<tt>jogl.all.jar</tt>||<tt>jogl.all.jar</tt>
|-
|<tt>gluegen-java-src.zip</tt>||<tt>gluegen-java-src.zip</tt>||<tt>gluegen-java-src.zip</tt>
|-
|<tt>jogl-java-src.zip</tt>||<tt>jogl-java-src.zip</tt>||<tt>jogl-java-src.zip</tt>
|-
|<tt>gluegen-rt-natives-windows-i586.jar</tt>||<tt>gluegen-rt-natives-linux-i586.jar</tt>||<tt>gluegen-rt-natives-macosx-universal.jar</tt>
|-
|<tt>gluegen-rt-natives-windows-amd64.jar</tt>||<tt>gluegen-rt-natives-linux-amd64.jar</tt>||<tt></tt>
|-
|<tt>jogl-all-natives-windows-i586.jar</tt>||<tt>jogl-all-natives-linux-i586.jar</tt>||<tt>jogl-all-natives-macosx-universal.jar</tt>
|-
|<tt>jogl-all-natives-windows-amd64.jar</tt>||<tt>jogl-all-natives-linux-amd64.jar</tt>||<tt></tt>
|}
 
For a full desktop installation using native libraries, here are the files you need:


{|cellpadding="4" cellspacing="0"
{|cellpadding="4" cellspacing="0"

Revision as of 14:41, 5 April 2012

Before you can build a project that uses JOGL in your IDE or on the command line, you'll need to download and install the JOGL JAR files and native JARs or libraries (.dll/.so/.jnilib files).

You have a choice of JOGL versions to download. The latest stable version is the safest, but lags behind in features. The latest automatic build contains all checked-in code, but may be failing some tests.

Downloading the latest stable version

Go to this page and download one of these files for each platform you're developing on:

32-bit Windows: jogamp-windows-i586.7z
64-bit Windows: jogamp-windows-amd64.7z
32/64-bit Mac OS X: jogamp-macosx-universal.7z
32-bit Linux: jogamp-linux-i586.7z
64-bit Linux: jogamp-linux-amd64.7z
32-bit Solaris: jogamp-solaris-i586.7z
64-bit Solaris: jogamp-solaris-amd64.7z

Downloading the latest automatic build

For the latest automatic build, we have to download gluegen and jogl separately.

First, go to this page and click on the most recent gluegen-b* directory. Then download one of these files for each platform you're developing on:

32-bit Windows: gluegen-2.0-bvvv-20yymmdd-windows-i586.7z
64-bit Windows: gluegen-2.0-bvvv-20yymmdd-windows-amd64.7z
32/64-bit Mac OS X: gluegen-2.0-bvvv-20yymmdd-macosx-universal.7z
32-bit Linux: gluegen-2.0-bvvv-20yymmdd-linux-i586.7z
64-bit Linux: gluegen-2.0-bvvv-20yymmdd-linux-amd64.7z
32-bit Solaris: gluegen-2.0-bvvv-20yymmdd-solaris-i586.7z
64-bit Solaris: gluegen-2.0-bvvv-20yymmdd-solaris-amd64.7z

Then, go back to this page and click on the most recent jogl-b* directory. Then download one of these files for each platform you're developing on:

32-bit Windows: jogl-2.0-bvvv-20yymmdd-windows-i586.7z
64-bit Windows: jogl-2.0-bvvv-20yymmdd-windows-amd64.7z
32/64-bit Mac OS X: jogl-2.0-bvvv-20yymmdd-macosx-universal.7z
32-bit Linux: jogl-2.0-bvvv-20yymmdd-linux-i586.7z
64-bit Linux: jogl-2.0-bvvv-20yymmdd-linux-amd64.7z
32-bit Solaris: jogl-2.0-bvvv-20yymmdd-solaris-i586.7z
64-bit Solaris: jogl-2.0-bvvv-20yymmdd-solaris-amd64.7z

Note that these automatic builds may not have passed all the regression tests. You can check the test results on the build server to make sure you're not downloading a broken build.

Native JARs vs. native libraries

JOGL uses native libraries to interface with each platform's OpenGL library. You can either download these native libraries wrapped up in JAR files (the "native JARs" option), or you can download them as separate .dll/.so/.jnilib files (the "native libraries" option).

When using native JARs, JOGL automatically unzips the native JAR files at startup into a temporary directory, then loads the resulting native libraries from there. When using native libraries, JOGL just loads them directly from where they sit, with no unzipping.

Using native JARs is usually easiest, since there are fewer files to manage and it allows different platforms' native libraries to coexist in the same directory. Only use the native libraries directly if you need fine control over native library file placement or if your app doesn't have permissions to create temporary directories.

Unzipping the files

Unzip all the downloaded files with 7zip. An unzipped file has this general directory structure:

<archive>/
<archive>/jar/
<archive>/lib/
<archive>/<module>-java-src.zip*

Now you may copy the required JARs out of each jar folder and the native libraries (if you're using them) out of each lib folder. For a full desktop installation using native JARs, here are the files you need:

Windows Linux Mac
gluegen-rt.jar gluegen-rt.jar gluegen-rt.jar
jogl.all.jar jogl.all.jar jogl.all.jar
gluegen-java-src.zip gluegen-java-src.zip gluegen-java-src.zip
jogl-java-src.zip jogl-java-src.zip jogl-java-src.zip
gluegen-rt-natives-windows-i586.jar gluegen-rt-natives-linux-i586.jar gluegen-rt-natives-macosx-universal.jar
gluegen-rt-natives-windows-amd64.jar gluegen-rt-natives-linux-amd64.jar
jogl-all-natives-windows-i586.jar jogl-all-natives-linux-i586.jar jogl-all-natives-macosx-universal.jar
jogl-all-natives-windows-amd64.jar jogl-all-natives-linux-amd64.jar

For a full desktop installation using native libraries, here are the files you need:

Windows Linux Mac
gluegen-rt.jar gluegen-rt.jar gluegen-rt.jar
jogl.all.jar jogl.all.jar jogl.all.jar
gluegen-java-src.zip gluegen-java-src.zip gluegen-java-src.zip
jogl-java-src.zip jogl-java-src.zip jogl-java-src.zip
gluegen-rt.dll libgluegen-rt.so libgluegen-rt.jnilib
jogl_desktop.dll libjogl_desktop.so libjogl_desktop.jnilib
nativewindow_awt.dll libnativewindow_awt.so libnativewindow_awt.jnilib
nativewindow_win32.dll libnativewindow_x11.so libnativewindow_macosx.jnilib
newt.dll libnewt.so libnewt.jnilib

More information

JogAmp follows a release scheme, which describes the following locations to download the 7z archives from:

JOGL Deployment describes the content of the 7z archive files.

These installations contain all of JOGL. If you want to remove parts you don't use, see JOGL Deployment for more information.