[Trilinos-Users] gcc 4.7 compile error for zoltan package

Nico Schlömer nico.schloemer at gmail.com
Mon Aug 27 11:45:26 MDT 2012


Quoting from the bug report, since not everyone has access :/

"The same issue has been fixed for another software,
https://github.com/zfsonlinux/zfs/commit/10be533e3344f523e1b8d6ab4f0658897a95ac02,
cf. http://gcc.gnu.org/onlinedocs/gcc-4.6.3/gcc/Function-Attributes.html."

The issue doesn't seem to be -ansi, but rather -fPIC.
Nevertheless, -ansi shouldn't be there either, but this is separate issue.

If you need your code to compile right now, you can go for static
Trilinos libraries.

--Nico


On Mon, Aug 27, 2012 at 7:30 PM, Andrey Prokopenko <prok12358 at gmail.com> wrote:
> Hi Ross,
>
> I'm getting the following:
>
> /usr/bin/mpicc -Dzoltan_EXPORTS -ansi -pedantic -Wall -Wno-long-long
> -fopenmp -O3 -fPIC <-I...> -c murmur3.c
>
> I'm not sure where does it come from. grep points to
> tribits/package_arch, though.
>
> Also, it uses __attribute__ which is a GNU extension. I think Intel
> compiler supports that but I am curious whether MS compiler supports
> it
>
> Andrey
>
>
>
> On Mon, Aug 27, 2012 at 10:44 AM, Bartlett, Roscoe A.
> <bartlettra at ornl.gov> wrote:
>> Andre,
>>
>> The flag -ansi should not be added to the compile line in a release of Trilinos (only in the development mode which should not be the default).  Can you cd into the directory and type 'make VERBOSE=1 <the target>' and see what compile options it is showing?  What is your configure line?  What Trilinos release version is this?
>>
>> Otherwise, I believe that Trilinos does not assume the C99 standard, only the C89/C90 standard, so such code would have to be changed or be explicitly dependent on a C99 enable flag or something.  Trilinos needs a more clear policy on assumed C standards and a clear way to allow some code to require (or be conditionally enabled) for the C99 standard.
>>
>> -Ross
>>
>> Dr. Roscoe A. Bartlett, PhD
>> Oak Ridge National Laboratories
>> Trilinos Software Engineering Technologies and Integration Lead
>> CASL Virtual Reactor Software Engineering Lead
>>
>>
>>
>>> -----Original Message-----
>>> From: trilinos-users-bounces at software.sandia.gov [mailto:trilinos-users-
>>> bounces at software.sandia.gov] On Behalf Of Andrey Prokopenko
>>> Sent: Sunday, August 26, 2012 9:08 PM
>>> To: Andre Massing
>>> Cc: trilinos-users at software.sandia.gov
>>> Subject: Re: [Trilinos-Users] gcc 4.7 compile error for zoltan package
>>>
>>> Hi,
>>>
>>>  I've also bumped into it, and also cannot access bugzilla. Some search
>>>  showed that one of the problems was that you actually need to add
>>>  inline keyword like
>>>     inline __attribute__((always_inline))
>>>
>>>  But it seems that you cannot do that because you need at least C99 for
>>>  inline keyword, but some configs in CMake or Makefile.am cause the
>>>  code to be compiled -ansi, or -c90. The code in question seems to be
>>>  in public domain, but I'm not sure about how easy is to modify it and
>>>  what are the issues related to copyright. The easiest thing would be
>>>  to require gcc < 4.7, or removed -ansi for compilation.
>>>
>>> On Sun, Aug 26, 2012 at 4:57 PM, Andre Massing <massing at simula.no>
>>> wrote:
>>> > -----BEGIN PGP SIGNED MESSAGE-----
>>> > Hash: SHA1
>>> >
>>> > Hi!
>>> >
>>> > On 08/27/2012 12:41 AM, Nico Schlömer wrote:
>>> >> Hi Andre,
>>> >>
>>> >> are you compiling shared libraries? I bumped into the same issue
>>> >> this weekend with GCC 4.7.
>>> >
>>> > Yes, that happened when I compiled the shared libraries.
>>> >
>>> >> The bug is registered at
>>> >> https://software.sandia.gov/bugzilla/show_bug.cgi?id=5680 where I
>>> >> also submitted a patch, so I suppose it won't take long until this
>>> >> is fixed.
>>> >
>>> > Many thanks for the pointer to the bug report! Unfortunately I cannot
>>> > read it since I haven't a bugzilla account yet, but I will try to ask
>>> > for one. Good to know that the problem has been reported already.
>>> >
>>> > Best,
>>> > Andre
>>> >
>>> >>
>>> >> --Nico
>>> >>
>>> >>
>>> >> On Mon, Aug 27, 2012 at 12:25 AM, Andre Massing <massing at simula.no>
>>> >> wrote:
>>> >>> Hi!
>>> >>>
>>> >>> I just tried to compile some of the newest trilinos packages and
>>> >>> got the following compile error when zoltan was compiled on a
>>> >>> Fedora 17 system using the gcc 4.7 compiler (after defining the
>>> >>> FORCE_INLINE macro in the zoltan source, the package compiles
>>> >>> fine, but I unsure what a proper fix should look like):
>>> >>>
>>> >>> [ 27%] Building C object
>>> >>> packages/zoltan/src/CMakeFiles/zoltan.dir/zz/murmur3.c.o
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:58:41:
>>> >>>
>>> >>>
>>> > warning: always_inline function might not be inlinable [-Wattributes]
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:45:41:
>>> >>>
>>> >>>
>>> > warning: always_inline function might not be inlinable [-Wattributes]
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:
>>> >>>
>>> >>>
>>> > In function ?MurmurHash3_x86_32?:
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:45:41:
>>> >>>
>>> >>>
>>> > error: inlining failed in call to always_inline ?fmix32?: function
>>> >>> body can be overwritten at link time
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:121:6:
>>> >>>
>>> >>>
>>> > error: called from here
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:
>>> >>>
>>> >>>
>>> > In function ?MurmurHash3_x86_128?:
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:58:41:
>>> >>>
>>> >>>
>>> > error: inlining failed in call to always_inline ?fmix64?: function
>>> >>> body can be overwritten at link time
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:218:14:
>>> >>>
>>> >>>
>>> > error: called from here
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:58:41:
>>> >>>
>>> >>>
>>> > error: inlining failed in call to always_inline ?fmix64?: function
>>> >>> body can be overwritten at link time
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:219:14:
>>> >>>
>>> >>>
>>> > error: called from here
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:58:41:
>>> >>>
>>> >>>
>>> > error: inlining failed in call to always_inline ?fmix64?: function
>>> >>> body can be overwritten at link time
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:220:14:
>>> >>>
>>> >>>
>>> > error: called from here
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:58:41:
>>> >>>
>>> >>>
>>> > error: inlining failed in call to always_inline ?fmix64?: function
>>> >>> body can be overwritten at link time
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:221:14:
>>> >>>
>>> >>>
>>> > error: called from here
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:
>>> >>>
>>> >>>
>>> > In function ?MurmurHash3_x64_128?:
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:58:41:
>>> >>>
>>> >>>
>>> > error: inlining failed in call to always_inline ?fmix64?: function
>>> >>> body can be overwritten at link time
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:304:6:
>>> >>>
>>> >>>
>>> > error: called from here
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:58:41:
>>> >>>
>>> >>>
>>> > error: inlining failed in call to always_inline ?fmix64?: function
>>> >>> body can be overwritten at link time
>>> >>> /home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/packages/zoltan/src/zz/murmur3.c:305:6:
>>> >>>
>>> >>>
>>> > error: called from here
>>> >>> make[2]: ***
>>> >>> [packages/zoltan/src/CMakeFiles/zoltan.dir/zz/murmur3.c.o] Error
>>> >>> 1 make[2]: Leaving directory
>>> >>> `/home/andre/Work/software/FEniCS-dependencies/tmp/src/trilinos-
>>> 10.12.2-Source/dorsal_build_dir'
>>> >>>
>>> >>>
>>> > make[1]: *** [packages/zoltan/src/CMakeFiles/zoltan.dir/all] Error 2
>>> >>>
>>> >>>
>>> >>> _______________________________________________ Trilinos-
>>> Users
>>> >>> mailing list Trilinos-Users at software.sandia.gov
>>> >>> http://software.sandia.gov/mailman/listinfo/trilinos-users
>>> >>>
>>> > -----BEGIN PGP SIGNATURE-----
>>> > Version: GnuPG v1.4.12 (GNU/Linux)
>>> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>>> >
>>> >
>>> iQEcBAEBAgAGBQJQOqnlAAoJEA79ggnbq9dmPukH/2EcEIYgymQIhrtT7TEC75
>>> mI
>>> >
>>> nfgXEMBQXFtrE9FnAuQjbolRub451eohg2+xTI12wkF60jgNUoxl3RhDxMrrjlrS
>>> >
>>> 9EYy1/kxv3m4tP2Mm8PV0WCPwE5ac3XX/qfJ6+poVGqIJy+8xugxjMCnfrfxv7
>>> Lq
>>> >
>>> UbK3ryReHy/CZ2zLIReG+qcEVVEpv9HOeNP8Oemj050/2SdzU2sCUvHrWBQ7j
>>> P/3
>>> >
>>> nK+P4GQMKdgxz5/XljseqldPI7wqE3O/QE5hyG91UuD4fsTSsfh7fOEtPITjtfGP
>>> >
>>> 07M31xLtcLChI6w3ZdArV/+3HvPJAz0Yse7zVnvkFd3U0wbMQB/Sl9g7S8ag4ro
>>> =
>>> > =lBif
>>> > -----END PGP SIGNATURE-----
>>> >
>>> >
>>> > _______________________________________________
>>> > Trilinos-Users mailing list
>>> > Trilinos-Users at software.sandia.gov
>>> > http://software.sandia.gov/mailman/listinfo/trilinos-users
>>> >
>>>
>>>
>>> _______________________________________________
>>> Trilinos-Users mailing list
>>> Trilinos-Users at software.sandia.gov
>>> http://software.sandia.gov/mailman/listinfo/trilinos-users
>>
>
>
> _______________________________________________
> Trilinos-Users mailing list
> Trilinos-Users at software.sandia.gov
> http://software.sandia.gov/mailman/listinfo/trilinos-users
>




More information about the Trilinos-Users mailing list