[overture] Re: Building v24 on Blue Gene P

  • From: "J. P. Bernstein" <astro@xxxxxxx>
  • To: overture@xxxxxxxxxxxxx
  • Date: Wed, 30 May 2012 15:53:21 -0500 (CDT)

Thanks, Erik. 

Turns out I needed "-WF,-D" for xlf commands and no modification for xlc and 
xlC commands. I found, per the ALCF wiki 
(http://www.alcf.anl.gov/resource-guides/quick-reference-guide):

----------
Preprocessing is performed differently by XL Fortran and C compilers. To define 
a preprocessor variable VAR:

        -DVAR     - in C/C++
        -WF,-DVAR - in XL Fortran
----------
 
My test was successful: 

mpixlf77_r -O -w -qarch=450d -qtune=450 -qmaxmem=-1 -qpic 
-WF,-DBL_AUTO_INSTANTIATE -qautodbl=dbl4 
-I/home/jpbernst/Code/Overture/Overture.v24/include 
-I/home/jpbernst/Code/Overture/A++P++-0.8.0/P++/install/include -c coeff.f
** laplaciancoeff   === End of Compilation 1 ===
** laplaciancoeff4   === End of Compilation 2 ===
** identitycoeff   === End of Compilation 3 ===
1501-510  Compilation successful for file coeff.f.

I Checked for "-D" in a make log for FORTRAN compile lines. All but one line 
had -DBL_AUTO_INSTANTIATE only. One line had -DKK_NRB_BLOCKED:

mpixlf77_r -O  -w -qarch=450d -qtune=450 -qmaxmem=-1 -qpic 
-Wl,-DBL_AUTO_INSTANTIATE  -qautodbl=dbl4   
-I/home/jpbernst/Code/Overture/Overture.v24/include 
-I/home/jpbernst/Code/Overture/A++P++-0.8.0/P++/install/include   
-DKK_NRB_BLOCKED -c nurbs_eval.F

The source is $Overture/Mapping/Makefile.in:

----------
# Compile this optimized (note extra macro definition)

nurbs_eval.o : ${@:.o=.F}; $(FC) $(FFLAGSO) -DKK_NRB_BLOCKED -c ${@:.o=.F}
#xlc nurbs_eval.o : ${@:.o=.F}; $(FC) $(FFLAGSO) -WF,-DKK_NRB_BLOCKED -c 
${@:.o=.F}
----------

I modified the lines above to be:

----------
# Compile this optimized (note extra macro definition)

#nurbs_eval.o : ${@:.o=.F}; $(FC) $(FFLAGSO) -DKK_NRB_BLOCKED -c ${@:.o=.F}
#xlc 

nurbs_eval.o : ${@:.o=.F}; $(FC) $(FFLAGSO) -WF,-DKK_NRB_BLOCKED -c ${@:.o=.F}
----------

and, in $Overture/config/MakeDefs.bgp, set:

cc_FLAGS = -w -qarch=450d -qtune=450 -qmaxmem=-1 -qpic -DBL_AUTO_INSTANTIATE
CC_FLAGS = -w -qarch=450d -qtune=450 -qmaxmem=-1 -qpic -DBL_AUTO_INSTANTIATE 
-qlanglvl=redefmac
FF_FLAGS = -w -qarch=450d -qtune=450 -qmaxmem=-1 -qpic -WF,-DBL_AUTO_INSTANTIATE

I then cleaned, reconfigured, and restarted the build, which ran through to 
$Overture/bin compilation, as before, but this time did not have the boxlib 
errors at ogen linking. On to the other linker errors.

Thank again for you help.

Best,

Joe

----- Original Message -----
From: "Erik Wilson" <wilsone@xxxxxx>
To: overture@xxxxxxxxxxxxx
Sent: Tuesday, May 29, 2012 11:09:39 PM
Subject: [overture] Re: Building v24 on Blue Gene P


Hi Joe,

If I remember correctly the IBM XL Fortran compiler requires something 
in addition to -D, maybe "-Wl,-D", the man page should have more info. I 
am guessing you can skip adding that definition to FF_FLAGS tho and it 
should work ok.

Cheers,
  -Erik

On 05/24/2012 01:40 PM, Erik Wilson wrote:
>
> Hi Joe,
>
> I think the answer is here: 
> https://cismwiki.bu.edu/wiki/Lfm/Prerequisites/Overture
>
> "Add the flag-DBL_AUTO_INSTANTIATE to cc_FLAGS, CC_FLAGS and FF_FLAGS 
> in config/MakeDefs.[ARCHITECTURE]. Then run gmake clean and return to 
> step 2 above (re-run configure and gmake to rebuild Overture)."
>
> Cheers,
>  -Erik
>
>
> On 05/24/2012 12:29 PM, J. P. Bernstein wrote:
>> Hello All,
>>
>> Due to problems with undefined references in the Mesa-7.2 build, I 
>> implemented by hand in stock Overturev24 the noGL functionality, were 
>> appropriate, from the older CISM-modified version of Overture from:
>>
>> https://cismwiki.bu.edu/Download/Overture
>>
>> I then extended the Overturev24 noX11 functionality to deal with the 
>> $Overture/static directory build problems from previous emails. In 
>> addition, I set:
>>
>> #undef OV_USE_UNDERSCORE
>>
>> in OvertureDefine.h.in as BG/P does not recognize underscores in 
>> FORTRAN calls from C++. I also removed:
>>
>> -DBL_FORT_USE_UNDERSCORE
>>
>> from the boxlib compilation.
>>
>> Now, upon doing a serial build, I get to the $Overture/bin 
>> compilation and then see the following failures:
>>
>> make[1]: Entering directory 
>> `/gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/bin'
>> perl ../config/makeDepend -f depend -Y -- 
>> -I/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include 
>> -I/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include   
>> -I/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include 
>> -DBL_USE_DOUBLE 
>> -DBL_Solaris -- plotStuffDriver.C plotStuffFunction.C  ogenDriver.C 
>> ogenFunction.C  rap.C mbuilder.C ps2ppm.C  decompress.C
>> run makedepend ...
>> ...done
>> touch depend
>> make[1]: Leaving directory 
>> `/gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/bin'
>> make[1]: Entering directory 
>> `/gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/bin'
>> xlC -qpic -qmaxmem=-1 
>> -I/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include 
>> -I/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include   
>> -I/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include 
>> -DBL_USE_DOUBLE 
>> -DBL_Solaris  -g   -c ogenDriver.C
>> "/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include/A++_notemplates.h",
>>  
>> line 1339.21: 1540-1091 (W) The friend declaration "APP_view" 
>> specifies a default argument expression and is not a definition.
>> . . .
>> "/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/nullgl.h", 
>> line 849.44: 1540-1101 (W) A return value of type "unsigned char" is 
>> expected.
>> "/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/nullgl.h", 
>> line 860.42: 1540-1101 (W) A return value of type "int" is expected.
>> "/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/nullgl.h", 
>> line 861.34: 1540-1101 (W) A return value of type "unsigned int" is 
>> expected.
>> "/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/nullgl.h", 
>> line 862.51: 1540-1101 (W) A return value of type "const unsigned 
>> char *" is expected.
>> . . .
>> xlC -qpic -qmaxmem=-1 
>> -I/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include 
>> -I/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include   
>> -I/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include 
>> -DBL_USE_DOUBLE 
>> -DBL_Solaris  -g   -c ogenFunction.C
>> "/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include/A++_notemplates.h",
>>  
>> line 1339.21: 1540-1091 (W) The friend declaration "APP_view" 
>> specifies a default argument expression and is not a definition.
>> . . .
>> "/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/nullgl.h", 
>> line 860.42: 1540-1101 (W) A return value of type "int" is expected.
>> . . .
>> xlC -qpic -qmaxmem=-1 
>> -I/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include 
>> -I/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include   
>> -I/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/include 
>> -DBL_USE_DOUBLE 
>> -DBL_Solaris  -g  -o ogen ogenDriver.o ogenFunction.o   
>> -Wl,-rpath,/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib 
>> -L/home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib 
>> -lOverture -lOverture_static  
>> -Wl,-rpath,/home/jpbernst/Code/hdf5-1.8.0/hdf5/lib 
>> -L/home/jpbernst/Code/hdf5-1.8.0/hdf5/lib -lhdf5 
>> -Wl,-rpath,/soft/apps/zlib-1.2.3/lib -L/soft/apps/zlib-1.2.3/lib -lz 
>> -Wl,-rpath,/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/lib 
>> -L/home/jpbernst/Code/Overture/serial/A++P++-0.8.0/A++/install/lib 
>> -lApp -lApp_static  -Wl,-rpath,/soft/apps/ibmcmp/xlf/bg/11.1/bglib 
>> -L/soft/apps/ibmcmp/xlf/bg/11.1/bglib -lxlopt -lxl -lxlf90 -lxlfmath
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture.a(second3.o):
>>  
>> In function `_start':
>> /gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/mapUtil/second3.c:21: 
>> multiple definition of `_start'
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o:init.c:(.text+0x0):
>>  
>> first defined here
>> /usr/bin/ld: Warning: size of symbol `_start' changed from 36 in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o to 32 
>> in 
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture.a(second3.o)
>> /soft/apps/zlib-1.2.3/lib/libz.a(compress.o): In function `compress':
>> compress.c:(.text+0xe0): multiple definition of `compress'
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture.a(TriangleSource.o):TriangleSource.c:(.text+0x264e0):
>>  
>> first defined here
>> /usr/bin/ld: Warning: size of symbol `compress' changed from 372 in 
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture.a(TriangleSource.o)
>>  
>> to 36 in /soft/apps/zlib-1.2.3/lib/libz.a(compress.o)
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o: In 
>> function `_start':
>> init.c:(.text+0x20): relocation truncated to fit: R_PPC_REL24 against 
>> symbol `__libc_start_main@@GLIBC_2.0' defined in .plt section in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/crtbegin.o:(.fini+0x0): 
>> relocation truncated to fit: R_PPC_REL24 against `.text'
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/crtend.o:(.init+0x0): 
>> relocation truncated to fit: R_PPC_REL24 against `.text'
>> ogenDriver.o: In function `__sinit65535()':
>> ogenDriver.C:(.text+0x14): relocation truncated to fit: 
>> R_PPC_LOCAL24PC against symbol `_GLOBAL_OFFSET_TABLE_' defined in 
>> .got section in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o+fffffffffffffffc
>> ogenDriver.o: In function `__sinit65535()':
>> /usr/include/c++/4.1.2/iostream:76: relocation truncated to fit: 
>> R_PPC_PLTREL24 against symbol 
>> `std::ios_base::Init::Init()@@GLIBCXX_3.4' defined in .plt section in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o
>> /usr/include/c++/4.1.2/iostream:76: relocation truncated to fit: 
>> R_PPC_PLTREL24 against symbol `__cxa_atexit@@GLIBC_2.1.3' defined in 
>> .plt section in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o
>> ogenDriver.o: In function `aString::__dftbdt(std::string*)':
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/aString.H:214:
>>  
>> relocation truncated to fit: R_PPC_LOCAL24PC against symbol 
>> `_GLOBAL_OFFSET_TABLE_' defined in .got section in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o+fffffffffffffffc
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/aString.H:214:
>>  
>> relocation truncated to fit: R_PPC_PLTREL24 against symbol 
>> `std::basic_string<char, std::char_traits<char>, std::allocator<char> 
>> >::~basic_string()@@GLIBCXX_3.4' defined in .plt section in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o
>> ogenDriver.o: In function `aString::operator char const*() const':
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/aString.H:214:
>>  
>> relocation truncated to fit: R_PPC_LOCAL24PC against symbol 
>> `_GLOBAL_OFFSET_TABLE_' defined in .got section in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o+fffffffffffffffc
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/aString.H:214:
>>  
>> relocation truncated to fit: R_PPC_PLTREL24 against symbol 
>> `std::string::c_str() const@@GLIBCXX_3.4' defined in .plt section in 
>> /usr/lib/gcc/powerpc64-suse-linux/4.1.2/../../../../lib/crt1.o
>> ogenDriver.o: In function `MappingInformation::MappingInformation()':
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../include/MappingInformation.h:27:
>>  
>> additional relocation overflows omitted from the output
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture.a(generateMatrix.o):
>>  
>> In function `Oges::generateMatrix(int&)':
>> generateMatrix.C:(.text+0x1188): undefined reference to `ds2y'
>> generateMatrix.C:(.text+0x1410): undefined reference to `qs2i1d'
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture_static.a(OvertureInit.o):
>>  
>> In function `Overture::getGraphicsInterface(aString const&, bool, 
>> int, char**)':
>> /gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/static/OvertureInit.C:554:
>>  
>> undefined reference to 
>> `GL_GraphicsInterface::GL_GraphicsInterface(bool, aString const&)'
>> /gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/static/OvertureInit.C:556:
>>  
>> undefined reference to 
>> `GL_GraphicsInterface::GL_GraphicsInterface(int&, char**, aString 
>> const&)'
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture_static.a(OvertureInit.o):
>>  
>> In function `Overture::nullFloatGridCollectionFunction()':
>> /gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/static/OvertureInit.C:491:
>>  
>> undefined reference to 
>> `floatGridCollectionFunction::floatGridCollectionFunction()'
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture_static.a(OvertureInit.o):
>>  
>> In function `Overture::nullFloatMappedGridFunction()':
>> /gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/static/OvertureInit.C:466:
>>  
>> undefined reference to 
>> `floatMappedGridFunction::floatMappedGridFunction()'
>> /home/jpbernst/Code/Overture/serial/Overture.v24/bin/../lib/libOverture_static.a(OvertureInit.o):
>>  
>> In function `Overture::start(int&, char**&)':
>> /gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/static/OvertureInit.C:199:
>>  
>> undefined reference to 
>> `floatMappedGridFunction::floatMappedGridFunction()'
>> /gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/static/OvertureInit.C:203:
>>  
>> undefined reference to 
>> `floatGridCollectionFunction::floatGridCollectionFunction()'
>> /soft/apps/ibmcmp/xlf/bg/11.1/bglib/libxlf90.so: undefined reference 
>> to `omp_get_thread_num'
>> make[1]: *** [ogen] Error 1
>> make[1]: Leaving directory 
>> `/gpfs/home/jpbernst/Code/Overture/serial/Overture.v24/bin'
>> make: *** [all] Error 2
>>
>> While I am continuing to investigate these, I would greatly 
>> appreciate any input.
>>
>> In addition, the parallel Overturev24 build fails with many of the 
>> same problems plus, e.g.:
>>
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../include/aString.H:214: 
>> additional relocation overflows omitted from the output
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(GridCollection.o):
>>  
>> In function `List<Box>::append(Box const&)':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BL_List.H:558: 
>> undefined reference to `List<Box>::addAfter(ListLink<Box>*, Box const&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(GridCollection.o):
>>  
>> In function `List<Box>::~List()':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BL_List.H:542: 
>> undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(GridCollection.o):
>>  
>> In function `BoxList::clear()':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BoxList.H:404: 
>> undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(ParentChildSiblingInfo.o):
>>  
>> In function `List<Box>::append(Box const&)':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BL_List.H:558: 
>> undefined reference to `List<Box>::addAfter(ListLink<Box>*, Box const&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(ParentChildSiblingInfo.o):
>>  
>> In function `List<Box>::~List()':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BL_List.H:542: 
>> undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(ParentChildSiblingInfo.o):
>>  
>> In function `BoxList::join(BoxList const&)':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BoxList.H:397: 
>> undefined reference to `List<Box>::join(List<Box>  const&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(ParentChildSiblingInfo.o):
>>  
>> In function `BoxList::clear()':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BoxList.H:404: 
>> undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(ParentChildSiblingInfo.o):
>>  
>> In function `BoxList::length() const':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BoxList.H:420: 
>> undefined reference to `List<Box>::length() const'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(InterpolateRefinements.o):
>>  
>> In function `List<Box>::~List()':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BL_List.H:542: 
>> undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(Regrid.o):
>>  
>> In function `Regrid::splitBox(Box&, intSerialArray const&, BoxList&, 
>> int)':
>> Regrid.C:(.text+0x4a48): undefined reference to 
>> `List<Box>::addAfter(ListLink<Box>*, Box const&)'
>> Regrid.C:(.text+0x4b4c): undefined reference to 
>> `List<Box>::addAfter(ListLink<Box>*, Box const&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(Regrid.o):
>>  
>> In function `BoxList::~BoxList()':
>> Regrid.C:(.text+0x4d64): undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(Regrid.o):
>>  
>> In function `Regrid::buildProperNestingDomains(GridCollection&, int, 
>> int, int, int)':
>> Regrid.C:(.text+0x9c6c): undefined reference to 
>> `List<Box>::addAfter(ListLink<Box>*, Box const&)'
>> Regrid.C:(.text+0x9e50): undefined reference to `List<Box>::clear()'
>> Regrid.C:(.text+0x9e58): undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(Regrid.o):
>>  
>> In function `Regrid::buildGrids(GridCollection&, GridCollection&, 
>> int, int, int, BoxList*, intSerialArray**)':
>> Regrid.C:(.text+0xcab0): undefined reference to `List<Box>::length() 
>> const'
>> Regrid.C:(.text+0xcc38): undefined reference to `List<Box>::length() 
>> const'
>> Regrid.C:(.text+0xf250): undefined reference to `List<Box>::length() 
>> const'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(Regrid.o):
>>  
>> In function `Regrid::regridAligned(GridCollection&, GridCollection&, 
>> bool, doubleGridCollectionFunction*, double, 
>> intGridCollectionFunction&, int, int)':
>> Regrid.C:(.text+0x14ba8): undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture.a(Regrid.o):
>>  
>> In function `List<Box>::~List()':
>> Regrid.C:(.text+0x1ccb4): undefined reference to `List<Box>::clear()'
>> . . .
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `List<Box>::append(Box const&)':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BL_List.H:558: 
>> undefined reference to `List<Box>::addAfter(ListLink<Box>*, Box const&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxList::length() const':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BoxList.H:420: 
>> undefined reference to `List<Box>::length() const'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxList::simplify()':
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:341: 
>> undefined reference to `List<Box>::remove(ListIterator<Box>&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxList::clear()':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BoxList.H:404: 
>> undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `List<Box>::~List()':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BL_List.H:542: 
>> undefined reference to `List<Box>::clear()'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxList::BoxList(BoxList const&)':
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:43: 
>> undefined reference to `List<Box>::List(List<Box>  const&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxList::complementIn(Box const&, BoxList const&)':
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:176: 
>> undefined reference to `List<Box>::catenate(List<Box>&)'
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:177: 
>> undefined reference to `List<Box>::remove(ListIterator<Box>&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `complementIn(Box const&, BoxList const&)':
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:153: 
>> undefined reference to `List<Box>::catenate(List<Box>&)'
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:154: 
>> undefined reference to `List<Box>::remove(ListIterator<Box>&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxList::intersect(Box const&)':
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:127: 
>> undefined reference to `List<Box>::remove(ListIterator<Box>&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxArray::operator[](int) const':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BoxArray.H:345: 
>> undefined reference to `Array<Box>::get(long) const'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxArray::length() const':
>> /home/jpbernst/Code/Overture/Overture.v24/include/BoxArray.H:317: 
>> undefined reference to `Array<Box>::length() const'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxList::operator=(BoxList const&)':
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:50: 
>> undefined reference to `List<Box>::operator=(List<Box>  const&)'
>> /home/jpbernst/Code/Overture/Overture.v24/bin/../lib/libOverture_static.a(BoxList.o):
>>  
>> In function `BoxList::BoxList(BoxList const&)':
>> /gpfs/home/jpbernst/Code/Overture/Overture.v24/boxlib/BoxList.C:43: 
>> undefined reference to `List<Box>::List(List<Box>  const&)'
>> /soft/apps/ibmcmp/xlf/bg/11.1/bglib/libxlf90.a(loadquery.o): In 
>> function `ResolveThreadNumFunc':
>> /build/xlf/111/xlf.111.bga-prod-opt-bgp/xlf/rte2/src/io/shr/loadquery.c:(.text+0xe):
>>  
>> undefined reference to `omp_get_thread_num'
>> /build/xlf/111/xlf.111.bga-prod-opt-bgp/xlf/rte2/src/io/shr/loadquery.c:(.text+0x16):
>>  
>> undefined reference to `omp_get_thread_num'
>> make[1]: Leaving directory 
>> `/gpfs/home/jpbernst/Code/Overture/Overture.v24/bin'
>>
>> These Box problems do not appear in the serial build. Any thoughts?
>>
>> Best,
>>
>> Joe
>>
>>
>> ----- Original Message -----
>> From: "Erik Wilson"<wilsone@xxxxxx>
>> To: overture@xxxxxxxxxxxxx
>> Sent: Wednesday, May 9, 2012 9:00:54 PM
>> Subject: [overture] Re: Building v24 on Blue Gene P
>>
>>
>> That is correct, part of my patch adds an ifdef around overlay.c:
>>
>> --- Overture.v24/static/overlay.c       2011-05-18 11:21:54.000000000 
>> -0400
>> +++ overture/static/overlay.c   2011-07-31 12:16:52.000000000 -0400
>> @@ -5,11 +5,16 @@
>>       and is provided without guarantee or warrantee expressed or
>>       implied. This program is -not- in the public domain. */
>>
>> +#include "OvertureDefine.h"
>> +
>> +#ifdef OV_USE_X11
>> +
>>    #include<stdlib.h>
>>    #include<X11/Xlib.h>
>>    #include<X11/Xutil.h>
>>    #include<X11/Xmd.h>
>>
>> +
>>    /* Transparent type values */
>>    /*      None                  0 */
>>    #define TransparentPixel      1
>> @@ -225,5 +230,7 @@ void detectOverlaySupport(Display *dpy,
>>        /* printf("**** info: overlay visual found *****\n"); */
>>        *overlayColormap = XCreateColormap(dpy,
>> DefaultRootWindow(dpy),overlayVisual, AllocNone); /* wdh */
>>      }
>> -
>>    }
>> +
>> +
>> +#endif // OV_USE_X11
>>
>> Cheers,
>>    -Erik
>>
>>
>> On 05/09/2012 04:30 PM, Bill Henshaw wrote:
>>> Joe;
>>>    I guess that Eric's patches must have removed the compilation of
>>> overlay.c which should not be compiled if there is no X11.
>>>
>>> ...Bill
>>>
>>> On 05/09/2012 04:07 PM, J. P. Bernstein wrote:
>>>> Hello All,
>>>>
>>>> Now a funny failure has cropped up. Upon restarting the build in
>>>> order to verify steps taken so far, I got this failure:
>>>>
>>>> mpixlc_r -w -qarch=450d -qtune=450 -qmaxmem=-1 -qpic
>>>> -I/home/jpbernst/Code/Overture/Overture.v24-pmake/include
>>>> -I/home/jpbernst/Code/Overture/A++P++-0.8.0/P++/install/include   -g
>>>> -DSHM -DUSE_PPP -I. -I/include -I/home/jpbernst/Code/Mesa-7.2/include
>>>> -c overlay.c
>>>> "overlay.c", line 9.10: 1506-296 (S) #include file<X11/Xlib.h>   not
>>>> found.
>>>> "overlay.c", line 10.10: 1506-296 (S) #include file<X11/Xutil.h>   not
>>>> found.
>>>> "overlay.c", line 11.10: 1506-296 (S) #include file<X11/Xmd.h>   not
>>>> found.
>>>>
>>>> I verified that it is now happening after creating a fresh Overture
>>>> build directory from the tarball and trying a build with the
>>>> following configuration command:
>>>>
>>>> ./configure bg noX11 parallel
>>>>
>>>> with only the following minimal modifications to the Overture source
>>>> in order to enable a build on BG/P:
>>>>
>>>> 1) Removed "-fPIC -Wno-deprecated" from PFLAGS in
>>>> GridFunction/Makefile.in (line 115).
>>>>
>>>> 2) Enclosed MPI info lookup code within  "if( $machine ne "bg" ) {}".
>>>>
>>>> 3) Adding to configure:
>>>>
>>>> if( $machine eq "bg"&&   $double ne "" )
>>>> {
>>>>     $FortranDouble = "-qautodbl=dbl4";
>>>> }
>>>>
>>>> I am at a loss as to why this started. Should this not be taken care
>>>> of by the noX11 configure option? I was not getting this build error
>>>> before. My MakeDefs file content is appended below.
>>>>
>>>> Best,
>>>>
>>>> Joe
>>>>
>>>>
>>>
>>
>>
>
>
>



Other related posts: