Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: Re: [OMPI devel] dummy component warnings
From: Nathan Hjelm (hjelmn_at_[hidden])
Date: 2011-01-25 16:47:28


Looks like a bug in Apple's gcc 4.0. I tried the source with gcc 3.4.6 and gcc 4.1.2 on Linux and did not see that error.

I will take a look and see if there is a simple fix to get around this apparent compiler bug.

-Nathan

On Tue, 25 Jan 2011, Jeff Squyres wrote:

> Short version
> =============
>
> MTT turned up a problem with -std=gnu99 on OS X Leopard, which ships with the gcc 4.0 compiler (OS X Snow Leopard ships with gcc 4.2, and doesn't have a problem). Does anyone have gcc 4.0 on Linux? I'm wondering if the same problem would occur.
>
> More details:
> =============
>
>> From our friends at Absoft:
>
> -----
> The -std=gnu99 is causing the problem when used with gcc-4.0 ( the default on Leopard with Apple's XCode 3.1 development tools ):
>
> BigMac:ompi cag$ gcc --version -std=gnu99 -c conftest.s
> conftest.s:2:3: error: invalid preprocessing directive #_gsym_test_func
> conftest.s:5:3: error: invalid preprocessing directive #_gsym_test_func
> BigMac:ompi cag$ gcc-4.0 -std=gnu99 -c conftest.s
> conftest.s:2:3: error: invalid preprocessing directive #_gsym_test_func
> conftest.s:5:3: error: invalid preprocessing directive #_gsym_test_func
> BigMac:ompi cag$ gcc-4.2 -std=gnu99 -c conftest.s
> BigMac:ompi cag$
>
> On Snow Leopard with Apple's XCode 3.2 development tools, the default compiler is 4.2.
> -----
>
> The compile line he's talking about in particular is from a configure test in opal/config/opal_config_asm.m4, where we're looking for assembly global symbols. The source that we're trying to compile is:
>
> -----
> .text
> # _gsym_test_func
> .globl _gsym_test_func
> _gsym_test_func:
> # _gsym_test_func
> -----
>
> (configure tries a few prefixes)
>
> But the "#" token with the -std=gnu99 option is causing failures where it shouldn't (i.e., it causes configure to abort because all the assembly tests looking for the global symbols error out due to the # token.
>
> So I think we either need to find a workaround for this assembly test or whack the idea of the C99 stuff. :-(
>
>
>
> On Jan 24, 2011, at 10:29 AM, Nathan Hjelm wrote:
>
>> No, they didn't get added (adding them now). I didn't get a chance to add them over the weekend.
>>
>> -Nathan
>>
>> On Mon, 24 Jan 2011, Jeff Squyres wrote:
>>
>>> I'm getting these:
>>>
>>> CC dummy_component.lo
>>> dummy_component.c:25: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:28: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:29: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:30: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:31: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:33: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:34: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:35: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:37: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c:39: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy_component.c: In function ‘component_open’:
>>> dummy_component.c:45: warning: unused variable ‘c’
>>> dummy.c:67: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy.c:68: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy.c:69: warning: ISO C90 forbids specifying subobject to initialize
>>> dummy.c:70: warning: ISO C90 forbids specifying subobject to initialize
>>> CCLD mca_debugger_dummy.la
>>>
>>> Did the autoconf tests not get added?
>>>
>>> --
>>> Jeff Squyres
>>> jsquyres_at_[hidden]
>>> For corporate legal information go to:
>>> http://www.cisco.com/web/about/doing_business/legal/cri/
>>>
>>>
>>> _______________________________________________
>>> devel mailing list
>>> devel_at_[hidden]
>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>> _______________________________________________
>> devel mailing list
>> devel_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>
> --
> Jeff Squyres
> jsquyres_at_[hidden]
> For corporate legal information go to:
> http://www.cisco.com/web/about/doing_business/legal/cri/
>
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>