[molpro-user] compiling c++ part of code with IBM compiler

amit sharma amit0206.s at gmail.com
Wed Feb 13 17:32:27 GMT 2013


Andy,
Removing static worked!  there is one another error, probably the last
before "make" generates lib.a.
$(CXX) -c $(CXXFLAGS) -O3 ItfAlgoSet.cpp
"ItfAlgoSet.cpp", line 683.27: 1540-1187 (S) "GenerateAlgo" must not have
default arguments.
Once I get it to compile (or otherwise) I will send you the changes that I
have made.

Jeff,
Is the GCC C++ compiler on BG/P a cross-compiler? I am not too sure from
ALCF documentation.

Thank you for your help.
Amit









On Wed, Feb 13, 2013 at 9:59 AM, Jeff Hammond <jhammond at alcf.anl.gov> wrote:

> Hi Andy,
>
> If you want machine access to port Molpro to BGP, POWER7 and/or BGQ,
> let me know and I will arrange it for you.
>
> Hi Amit,
>
> Just use GCC C++ compiler (mpicxx on BG).  The XLC++ compiler on BGP
> is really bad and even if I filed a bug report today, IBM might not
> fix it before the machine is unplugged at Argonne (in a year or so).
> You'll not see an performance benefit from XLC anyways since it
> auto-vectorizes about as often as large asteroids strike the earth.
>
> In general, I always recommend porting a code to BG for the first time
> with GCC.  If that works but the subsequent attempt with the IBM
> compilers fails, we know it's a compiler problem.  On the other hand,
> if the GCC port fails, it's a system software issue, not a compiler
> issue.  Occasionally, GCC has problems but those can always be
> verified on another system, which makes debugging much simpler.
>
> If GCC 4.1.2 doesn't work due to lack of either C++ or Fortran 95
> support, we also have GCC 4.3.2 (you'll need the softenv key for this,
> but type "softenv" and it will show you the list of options
> available).  Users have built GCC 4.6 on BGP in the event that Molpro
> needs some very exotic C++ features added recently (I doubt this).
>
> Best,
>
> Jeff
>
> On Wed, Feb 13, 2013 at 5:49 AM, Andy May <MayAJ1 at cardiff.ac.uk> wrote:
> > Amit,
> >
> > We don't have access to the IBM XL compilers or any systems with them
> > installed, so the settings for those compilers are quite old and not
> tested
> > recently.
> >
> > If you can send me the changes you needed to make to CONFIG, subdirs.mketc.
> > then I'll patch them in.
> >
> > I tried searching for the error and came across this:
> >
> >
> http://stackoverflow.com/questions/1094066/static-declarations-are-not-considered-for-a-function-call-if-the-function-is-no
> >
> > which seems to suggest that simply removing the 'static' declarations
> (eg.
> > line 2188) should be able to fix the problem, perhaps you can try this?
> >
> > Best wishes,
> >
> > Andy
> >
> >
> > On 07/02/13 22:15, amit sharma wrote:
> >>
> >> Hi,
> >> I am trying to compile Molpro 2012 with IBM compiler on BG/P. There were
> >> issues with the fortran part of the code which I was able to resolve. I
> >> had to declare separate flags for .F and .F90 and make changes in
> >> subdirs.mk <http://subdirs.mk>. The fortran part has been compiled. I
> am
> >>
> >> getting errors when compiling the c++ part of the package, mostly in
> >> src/cic subdirectory. Similar errors have been reported on IBM forums at
> >> some point of time and seems to have been resolved. Maybe I am missing a
> >> flag that someone can point me to or I might be using wrong -D flag.
> >> Here are the errors
> >> $(CXX) -c $(CXXFLAGS) -O3 ItfTensor.cpp
> >>
> >> where CXXFLAGS is =
> >>
> >> -qarch=450d -qtune=450 -DMOLPRO -D_I8_ -DBLAS_INT=8 -DLAPACK_INT=8
> >> -DMOLPRO_FORCE_VECTOR -DMOLPRO_HPDIR -DMOLPRO_NEXTSCALAR
> >> -DMOLPRO_NO_RECURRENCE -DMOLPRO_NOVECTOR -DMOLPRO_SCALAR
> >> -DMOLPRO_SHORTLOOP -D_MOLCAS_MPP_ -I. -I.. -I../Molcas/Include
> >> -I../boost -qidirfirst
> >>
> >> "ItfTensor.cpp", line 2274.17: 1540-0274 (S) The name lookup for
> >> "CanonicalizeIndexPair2" did not find a declaration.
> >> "ItfTensor.cpp", line 2274.17: 1540-1292 (I) Static declarations are not
> >> considered for a function call if the function is not qualified.
> >> "ItfTensor.cpp", line 2248.6: 1540-0700 (I) The previous message was
> >> produced while processing
> >> "FIndexCanonicalizer::Canonicalize<TArrayFix<signed char,6,unsigned int>
> >>  >(TArrayFix<signed char,6,unsigned int> &, FSlotOrder &, const
> >> TArrayFix<signed char,6,unsigned int> &) const".
> >> "ItfTensor.cpp", line 2279.17: 1540-0274 (S) The name lookup for
> >> "CanonicalizeIndexPairGen" did not find a declaration.
> >> "ItfTensor.cpp", line 2279.17: 1540-1292 (I) Static declarations are not
> >> considered for a function call if the function is not qualified.
> >> "ItfTensor.cpp", line 2274.17: 1540-0274 (S) The name lookup for
> >> "CanonicalizeIndexPair2" did not find a declaration.
> >> "ItfTensor.cpp", line 2274.17: 1540-1292 (I) Static declarations are not
> >> considered for a function call if the function is not qualified.
> >> "ItfTensor.cpp", line 2248.6: 1540-0700 (I) The previous message was
> >> produced while processing
> >> "FIndexCanonicalizer::Canonicalize<TArrayFix<unsigned long
> >> long,6,unsigned int> >(TArrayFix<unsigned long long,6,unsigned int> &,
> >> FSlotOrder &, const TArrayFix<unsigned long long,6,unsigned int> &)
> >> const".
> >> "ItfTensor.cpp", line 574.41: 1540-0700 (I) The previous message was
> >> produced while processing "FTensorShapeCut::MakeBlockEntries(FBlockEntry
> >> *&, FBlockCount &, FMemoryStack &, const FBlockRange &, const
> >> FSlotAccessModes &, uint) const".
> >> "ItfTensor.cpp", line 2279.17: 1540-0274 (S) The name lookup for
> >> "CanonicalizeIndexPairGen" did not find a declaration.
> >> "ItfTensor.cpp", line 2279.17: 1540-1292 (I) Static declarations are not
> >> considered for a function call if the function is not qualified.
> >> "ItfTensor.cpp", line 2274.17: 1540-0274 (S) The name lookup for
> >> "CanonicalizeIndexPair2" did not find a declaration.
> >> "ItfTensor.cpp", line 2274.17: 1540-1292 (I) Static declarations are not
> >> considered for a function call if the function is not qualified.
> >> "ItfTensor.cpp", line 2248.6: 1540-0700 (I) The previous message was
> >> produced while processing
> >> "FIndexCanonicalizer::Canonicalize<FBlockRange>(FBlockRange &,
> >> FSlotOrder &, const FBlockRange &) const".
> >> "ItfTensor.cpp", line 2279.17: 1540-0274 (S) The name lookup for
> >> "CanonicalizeIndexPairGen" did not find a declaration.
> >> "ItfTensor.cpp", line 2279.17: 1540-1292 (I) Static declarations are not
> >> considered for a function call if the function is not qualified.
> >> make[2]: *** [ItfTensor.o] Error 1
> >>
> >>
> >>  >mpixlcxx -qarch=450d -qtune=450 -DMOLPRO -D_I8_ -DBLAS_INT=8
> >> -DLAPACK_INT=8 -DMOLPRO_FORCE_VECTOR -DMOLPRO_HPDIR -DMOLPRO_NEXTSCALAR
> >> -DMOLPRO_NO_RECURRENCE -DMOLPRO_NOVECTOR -DMOLPRO_SCALAR
> >> -DMOLPRO_SHORTLOOP -D_MOLCAS_MPP_ -I. -I.. -I../Molcas/Include
> >> -I../boost -qidirfirst -c ItfAlgoSet.cpp
> >> "ItfAlgoSet.cpp", line 683.27: 1540-1187 (S) "GenerateAlgo" must not
> >> have default arguments.
> >>
> >> Thx
> >> Amit
> >>
> >>
> >>
> >>
> >>
> >> _______________________________________________
> >> Molpro-user mailing list
> >> Molpro-user at molpro.net
> >> http://www.molpro.net/mailman/listinfo/molpro-user
> >>
> > _______________________________________________
> > Molpro-user mailing list
> > Molpro-user at molpro.net
> > http://www.molpro.net/mailman/listinfo/molpro-user
>
>
>
> --
> Jeff Hammond
> Argonne Leadership Computing Facility
> University of Chicago Computation Institute
> jhammond at alcf.anl.gov / (630) 252-5381
> http://www.linkedin.com/in/jeffhammond
> https://wiki.alcf.anl.gov/parts/index.php/User:Jhammond
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.molpro.net/pipermail/molpro-user/attachments/20130213/8f652ad9/attachment.html>


More information about the Molpro-user mailing list