[Insight-users] vxl_config.h : Installing ITK on Linux.

Luis Ibanez luis . ibanez at kitware . com
Fri, 05 Dec 2003 10:36:57 -0500


Hi Zein,

Don't panic !

Installing ITK in Linux is easier that in most of the
other systems.

You don't need to rename any ITK files nor tweak any
headers.


You simply need to do the following steps


0) Remove the binary directory or directories where you
    have been  experimenting. By now they should be in
    a very inconsistent state.


1) Check the versions of gcc and g++ that you are using.
    simply type:

    gcc --version

      and

    g++   --version


    They should correspond to the same GCC version.


2) check where these two executables are installed, simply type

    which   gcc

    and


    which g++


    The typical answer is something like

    /usr/bin/gcc
    /usr/bin/g++

    but it may be different in your system


3) Set up the environment variables CC and CXX

    Depending on you Shell you do this by typing

    setenv CXX /usr/bin/g++
    setenv CC  /usr/bin/gcc

    or

    export CXX=/usr/bin/g++
    export CC=/usr/bin/gcc


    (note that I'm  writing here /usr/bin/gcc but that
     should be whatever "which gcc" returned in your system)



4) create a binary directory where you want to build
    ITK, cd into this directory, and from there type

    ccmake

    with the ITK source directory as argument.



5) Disable TESTING, Disable EXAMPLES and hit the "c"
    key for configuring ITK. Then hit the "g" key for
    generate and quit.



6) Finally type
                    "make"

    The build should start there and take about 15min.


-----


BTW you may want to get familiar with UNIX commands
before you dig deeply into Linux. That will make your
life a lot easier.



   Regards,


    Luis






--------------------------------------------------------

salah wrote:
> Hello all,
> 
> what are the definitions in the files vxl_config.h related to ?? 
> I am wondering if this has to do with the error in shown in the 
> attached file.
> 
> Thanks,
> Zein
> 
> 
> 
> ------------------------------------------------------------------------
> 
> Building object file vnl_math.o...
> /usr/local/src/Insight/Code/Numerics/vxl/vnl/vnl_math.cxx:33:2: warning: #warning finite() is not declared on this platform
> /usr/local/src/Insight/Code/Numerics/vxl/vnl/vnl_math.cxx: In function `bool
>    finite(double)':
> /usr/local/src/Insight/Code/Numerics/vxl/vnl/vnl_math.cxx:37: error: new
>    declaration `bool finite(double)'
> /usr/include/bits/mathcalls.h:205: error: ambiguates old declaration `int
>    finite(double)'
> /usr/local/src/Insight/Code/Numerics/vxl/vnl/vnl_math.cxx:37: error: `bool
>    finite(double)' was declared `extern' and later `static'
> /usr/include/bits/mathcalls.h:205: error: previous declaration of `int
>    finite(double)'
> make[7]: *** [vnl_math.o] Error 1
> make[6]: *** [/usr/local/src/Insight_Linux/bin/libVXLNumerics.so] Error 2
> make[5]: *** [/usr/local/src/Insight_Linux/bin/libITKCommon.so] Error 2
> make[4]: *** [default_target] Error 2
> make[3]: *** [default_target_Numerics] Error 2
> make[2]: *** [default_target] Error 2
> make[1]: *** [default_target_Code] Error 2
> make: *** [default_target] Error 2