Main Page Basics, Building SPICE Applications (FORTRAN)
## Table of Contents
       Basics, Building SPICE Applications (FORTRAN)
          Note About HTML Links
          Environment Set-up
             Unix/Linux
             Windows
          A simple example program
             Unix/Linux
             Windows
Top # Basics, Building SPICE Applications (FORTRAN) March 01, 2023 Top ## Note About HTML Links The HTML version of this lesson contains links pointing to various HTML documents provided with the Toolkit. All of these links are relative and, in order to function, require this document to be in a certain location in the Toolkit HTML documentation directory tree. In order for the links to be resolved, if not done already by installing the lessons package under the Toolkit's ``doc/html'' directory, create a subdirectory called ``lessons'' under the ``doc/html'' directory of the ``toolkit/'' tree and copy this document to that subdirectory before loading it into a Web browser. Top ## Environment Set-up Top ### Unix/Linux Assume SPICELIB is installed at /naif/toolkit/. The corresponding path for the SPICELIB library being /naif/toolkit/lib/spicelib.a. Use a terminal window. Top ### Windows Assume SPICELIB is installed at c:\naif\toolkit. The corresponding path for the SPICELIB library being c:\naif\toolkit\lib\spicelib.lib. Launch a command window with pre-set Intel Fortran compiler environment variables:
       Programs ->
          Intel oneAPI YYYY ->
             Intel oneAPI command prompt for Intel 64 ...
Top ## A simple example program This program calls the SPICELIB subroutine 'TKVRSN' then outputs the VERSN return argument. File tk_ver.f:
             PROGRAM TK_VER

             CHARACTER*(20) VERSN

             CALL TKVRSN ( 'TOOLKIT', VERSN )

             WRITE(*,*) 'Toolkit version: ', VERSN

             END
Top ### Unix/Linux This example uses the GNU FORTRAN 9X compiler (gfortran):
       $ gfortran tk_ver.f -o tk_ver /naif/toolkit/lib/spicelib.a

       $ ./tk_ver
        Toolkit version: N0067
SPICE library naming does not conform to the UNIX convention of libname.a for use with the -L/path_to_libs/ -lname_of_lib compile option. Top ### Windows This example uses the Intel FORTRAN compiler (ifort):
       > SET TKF77OPS=/fpscomp:all /assume:byterecl /check:bounds

       > ifort %TKF77OPS% /c /Tftk_ver.f
       Intel(R) Fortran Intel(R) 64 Compiler Classic ...

       > ifort %TKF77OPS% tk_ver.obj c:\naif\toolkit\lib\spicelib.lib
       Intel(R) Fortran Intel(R) 64 Compiler Classic ...

       -out:tk_ver.exe
       -subsystem:console
       tk_ver.obj
       c:\naif\toolkit\lib\spicelib.lib

       > .\tk_ver.exe
       Toolkit version: N0067