<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <link href="../../style.css" rel="stylesheet" type="text/css"/>
        <title>How to build JOCL</title>
    </head>
    <body>
        <div id="container">
            <div id="header">
                <div id="slogan">How to build JOCL</div>
                <div id="logo"><a href="http://jogamp.org/">How to build JOCL</a></div>
            </div>
            <div id="menu">
                <ul>
                    <li><a href="http://jogamp.org/">Home</a></li>
                    <li><a href="../../gluegen/www/">Gluegen</a></li>
                    <li><a href="../../joal/www/">JOAL</a></li>
                    <li><a href="../../jocl/www/">JOCL</a></li>
                    <li><a href="../../jogl/www/">JOGL</a></li>
                    <li><a href="../../demos/www/">Demos</a></li>
                    <li><a href="../../wiki/">Wiki</a></li>
                    <li><a href="../../blog/">Blogs</a></li>
                    <li><a href="../../forum.html">Forums</a></li>
                </ul>
            </div>
            <div id="main">
                <div id="sidebar">
                    <h3>Useful Links</h3>
                    <ul>
                        <li><a href="../../jogl/doc/HowToBuild.html">JOGL Build HowTo</a></li>
                        <li><a href="http://jogamp.org/chuck/job/jocl_onmaster/label=linux64-null-centos54-jogamp-x64-chuck-001/javadoc/">JOCL JavaDoc</a></li>
                        <li><a href="http://jogamp.org/wiki/index.php/JOCL_FAQ#Getting_Started">JOCL Hello World</a></li>
                        <li><a href="http://www.khronos.org/opencl/sdk/1.0/docs/man/xhtml/">OpenCL Reference Pages</a></li>
                        <li><a href="http://www.khronos.org/registry/cl/specs/opencl-1.0.48.pdf">OpenCL 1.0 Specification</a></li>
                        <li><a href="http://www.khronos.org/files/opencl-quick-reference-card.pdf">OpenCL Quick Reference</a></li>
                        <li><a href="http://developer.amd.com/documentation/videos/OpenCLTechnicalOverviewVideoSeries/Pages/default.aspx">ATI Stream OpenCL Technical Overview Video Series</a></li>
                        <li><a href="http://www.macresearch.org/opencl">Mac Research OpenCL Tutorials</a></li>
                    </ul>

                </div>
                <div id="text">
                    <h2>Prerequisites</h2>
                    <hr/>
                    <p>
                        <b>Follow all steps</b> described in <a href="../../jogl/doc/HowToBuild.html">How to build JOGL</a>.<br/>
                        If you could successfully pass the <code>junit.run</code> tests, you may continue here.<br/>
                    </p>

                    <h2>Platform and Component Requirements</h2>
                    <hr/>
                    First you have to install an OpenCL SDK on your platform.
                    <ul>
                        <li> <b>GPU NVidia</b> Geforce >= 8<br/>
                            Install the latest NVidia graphics driver available for your platform,<br/>
                            and the GPU computing SDK (<i>gpucomputingsdk</i>).
                            <ul>
                                <li> NVidia <a href="http://developer.nvidia.com/object/cuda_3_0_downloads.html">GPU Computing SDK code samples</a></li>
                            </ul>
                        </li>
                        <li> <b>GPU AMD</b><br/>
                            Install the latest AMD graphics driver available for your platform,<br/>
                            and install the AMD Stream SDK, see below.
                        </li>
                        <li> <b>CPU x86 x86_64 SSE3</b>
                            <ul>
                                <li> AMD <a href="http://developer.amd.com/gpu/ATIStreamSDK/Pages/default.aspx">ATI Stream SDK</a></li>
                            </ul>
                        </li>
                    </ul>

                    <h2>Build Steps</h2>
                    <hr/>
                    <p>
                        Here are the steps that are required in order to build JOCL.
                    </p>

                    <ol>
                        <li><b>Optain the source code</b> using git:
                            <ul>
                                <li><a href="http://github.com/mbien/jocl">JOCL Dev GIT Repo</a></li>
                            </ul>

                            It is crucial that you checkout the source code under the common root directory:
                            <pre>
    /home/dude/projects/jogamp> git clone git://github.com/mbien/jocl.git jocl
                            </pre>
                            Now you should have following directory structure:
                            <pre>
    /home/dude/projects/jogamp
    /home/dude/projects/jogamp/gluegen
    /home/dude/projects/jogamp/jogl
    /home/dude/projects/jogamp/jocl
                            </pre>
                        </li>

                        <li> <b>Unset your CLASSPATH environment variable:</b> <br/>
                            The Ant build requires that the JOGL jars not be visible on the classpath. On Unix, type <code> unsetenv CLASSPATH </code>
                            into a csh or tcsh shell, or <code> unset CLASSPATH </code> into a Bourne shell. On Windows, type <code> set CLASSPATH= </code> into a command prompt.</li>

                        <li> <b>Optional</b>  <i>Copy and edit <b>jocl.properties</b>:</i> <br/>
                            To specify different basic options for the build,<br/>
                            copy <b>jocl/make/jocl.properties</b> into your home directory (pointed to by the Java system property <b>user.home</b>). <br/>
                            Edit the copy to change desired settings.
                        </li>

                        <li> <b>Build the source tree:</b> <br/>
                            Open a command shell in the "jocl" directory of the source tree and type <code>"ant jar"</code>.
                        </li>
                        <li> <b>Test your build:</b> <br/>
                            Stay in your command shell in the "jocl" directory of the source tree and type <code>"ant test"</code>.
                        </li>

                        <li> <b>Build Javadoc:</b> <br/>
                            Stay in your command shell in the "jocl" directory of the source tree and type <code>"ant javadoc"</code>.
                            This will produce the end-user documentation for JOCL.
                        </li>
                    </ol>

                    <h2> Common build problems </h2>

                    <ul>
                        <li>TODO</li>
                    </ul>
                </div>
            </div>
            <div id="footer">
                <div id="footer_left">
                    <span>JogAmp.org</span>
                    by <a href="http://jogamp.org">http://jogamp.org</a>
                    is licensed under a <br/>
                    <a href="http://creativecommons.org/licenses/by/3.0/us/">Creative Commons Attribution 3.0 License</a>.
                </div>
            </div>
        </div>
    </body>
</html>