[overture] Re: Compiling overture v23 on intel mac

  • From: Praveen C <cpraveen@xxxxxxxxx>
  • To: overture@xxxxxxxxxxxxx
  • Date: Thu, 30 Apr 2009 12:01:24 +0200

Hi Philip
Thanks for the tip. I am now able to compile it. But when I ran ogen, I got
an error related to libjpeg. Apparently there is a conflict between libJPEG
installed by Leopard and libjpeg installed by fink due to
case-insensitivity. So in Overture.v23/defenv I added this line

export LD_FALLBACK_LIBRARY_PATH=$LD_LIBRARY_PATH

and I source defenv in by bash, and then all ogen programs work.

Below is the steps I did to compile on intel mac.

gcc and gfortran: 4.3.3 from fink

-------------------------------------------------------------------------------
A++:
-------------------------------------------------------------------------------

CPPFLAGS=-I/usr/include/malloc ./configure --disable-SHARED_LIBS
  --prefix=`pwd` --with-CC=/sw/bin/gcc-4 --with-CXX=/sw/bin/g++-4

make

make install

-------------------------------------------------------------------------------
Overture:
-------------------------------------------------------------------------------

. defvar

./configure darwin bcc=/sw/bin/gcc-4 bCC=/sw/bin/g++-4 FC=gfortran
debugFlag=-DBL_AUTO_INSTANTIATE useHDF5

make

-------------------------------------------------------------------------------
CG:
-------------------------------------------------------------------------------

export OS=Darwin
make


On Wed, Apr 29, 2009 at 9:16 AM, Philip M. Blakely <pmb39@xxxxxxxxx> wrote:

> Hi Praveen,
>
> I've copied below a reply I sent to the previous Overture mailing list some
> time ago. I think you're having the same problem as I had.
>
> Philip
>
> -----------------------------
>
> I've been having similar problems with undefined references to
> List<Box>::clear() etc. recently, while using the Intel Compiler version
> 9.1. It turns out that these errors turn up because although the template
> List<T> has been defined, it hasn't been instantiated explicitly for T=Box.
>
> At the bottom of BoxList.H and Array.H, there are lines
> #ifdef BL_AUTO_INSTANTIATE
> #include <BL_List.C>
> #endif
>
> and
>
> #ifdef BL_AUTO_INSTANTIATE
> #include <Array.C>
> #endif
>
> These will instantiate the correct templates if BL_AUTO_INSTANTIATE is
> defined. Either comment out #ifdef BL_AUTO_INSTANTIATE and #endif in both
> cases, or reconfigure and compile with --debugFlag=-DBL_AUTO_INSTANTIATE.
>
> I think this is allowed for in the ./configure script, but only if the
> compiler is "g++" or "kcc", which doesn't work if your compiler command is
> gcc (even if it calls g++).
>
> This certainly got rid of the errors I was having.
>
>
>
>
>
-- 
http://pc.freeshell.org

Other related posts: