Open MPI logo

Open MPI User's 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 users] compilation error with pgcc Unknown switch
From: Gustavo Correa (gus_at_[hidden])
Date: 2012-02-15 15:22:21


On Feb 15, 2012, at 1:58 PM, Abhinav Sarje wrote:

> Hi Gus,
> I have not added any flags that include static, but when I do a
> verbose compilation output for the point where error occurs, I see
> that there are some -Bstatic flags. I tried to manually remove the
> -Bstatic included just before the libopen-pal.so library, and that
> particular line then compiled without error. But then while doing
> overall build, the same error occurs at multiple points.
>
> I will try to use the latest nightly tarball and see if it works.
>
> Thanks a lot.
>

Hi Abhinav

For what it is worth, I built here OpenMPI 1.4.4 on Linux x86-64 CentOS 5.2 [a bit old]
with the PGI 11.7 compilers.
I didn't even use the -noswitcherror switch [which I had to use in some of the
previous versions of OpenMPI and PGI].

How about forcing the use of shared libraries with -Bdynamic along with that -noswitcherror,
in the CC, FC, etc declarations?

Still, this looks strange, and my guess is that this may be some twist in your compiler
installation/configuration.

But it may come also from the OpenMPI configure script.
Could the OpenMPI configure pick and use the PGI -Bstatic flag, perhaps?
This type of thing only the developers can tell.
Better hear from them.

I hope this helps,
Gus Correa

> Abhinav
>
> On Wed, Feb 15, 2012 at 7:42 AM, Gustavo Correa <gus_at_[hidden]> wrote:
>> Hi Abhinav
>>
>> Did you add to your compiler flags -Bstatic [or perhaps -static],
>> or any optimization flags that may include -Bstatic/-static?
>> Check also the compiler configuration, and any possible user customization
>> [~/.mypggcc and friends] to see if -Bstatic is there, maybe inadvertently, and is set by default.
>> That is all I can think of.
>> Maybe it will require Jeff and the Open MPI developers to sort
>> the problem out.
>>
>> Gus Correa
>>
>> On Feb 15, 2012, at 12:19 AM, Abhinav Sarje wrote:
>>
>>> Hi Gus, I had tried with the -noswitcherror flags, which removed the
>>> 'unknown-switch' error, but then I am still getting the "attempted
>>> static link of dynamic object" error as I reported earlier.
>>>
>>> Thanks.
>>>
>>> On Fri, Feb 10, 2012 at 5:57 AM, Gustavo Correa <gus_at_[hidden]> wrote:
>>>> Hi Abhinav
>>>>
>>>> Setting CC='pgcc --noswitcherror', FC='pgfortran --noswitcherror', etc, may prevent the
>>>> error message [but not sure it will prevent any actual and unreported error].
>>>> Check details with 'man pgfortran'.
>>>>
>>>> I hope this helps,
>>>> Gus Corea
>>>>
>>>> .
>>>>
>>>> On Feb 10, 2012, at 2:03 AM, Abhinav Sarje wrote:
>>>>
>>>>> I tried with 1.5.4 and same compilers, and got the exact same error.
>>>>> I also tried PGI version 11.10.0, and got the same thing.
>>>>>
>>>>>
>>>>> On Wed, Feb 8, 2012 at 3:04 AM, Jeff Squyres (jsquyres)
>>>>> <jsquyres_at_[hidden]> wrote:
>>>>>> Can you try building 1.5.4 with the same compilers?
>>>>>>
>>>>>> Sent from my phone. No type good.
>>>>>>
>>>>>> On Feb 7, 2012, at 3:14 PM, "Abhinav Sarje" <asarje_at_[hidden]> wrote:
>>>>>>
>>>>>>> I am trying to build open-mpi 1.4.4 (latest stable from open-mpi.org)
>>>>>>> using PGI compilers on a cray platform. PGI compilers' version is
>>>>>>> 11.9.0. I get the following error while building:
>>>>>>> -------------------------------------
>>>>>>> Making all in tools/wrappers
>>>>>>> make[2]: Entering directory `{my_installation_directory}/opal/tools/wrappers'
>>>>>>> source='opal_wrapper.c' object='opal_wrapper.o' libtool=no \
>>>>>>> DEPDIR=.deps depmode=none /bin/sh ../../../config/depcomp \
>>>>>>> cc "-DEXEEXT=\"\"" -I. -I../../../opal/include
>>>>>>> -I../../../orte/include -I../../../ompi/include
>>>>>>> -I../../../opal/mca/paffinity/linux/plpa/src/libplpa -I../../..
>>>>>>> -D_REENTRANT -O -DNDEBUG -fPIC -c -o opal_wrapper.o opal_wrapper.c
>>>>>>> /bin/sh ../../../libtool --tag=CC --mode=link cc -O -DNDEBUG -fPIC
>>>>>>> -export-dynamic -o opal_wrapper opal_wrapper.o
>>>>>>> ../../../opal/libopen-pal.la -lnsl -lutil
>>>>>>> libtool: link: cc -O -DNDEBUG -fPIC -o .libs/opal_wrapper
>>>>>>> opal_wrapper.o --export-dynamic ../../../opal/.libs/libopen-pal.so
>>>>>>> -ldl -lnsl -lutil -rpath {my_installation_directory}/lib
>>>>>>> pgcc-Error-Unknown switch: --export-dynamic
>>>>>>> make[2]: *** [opal_wrapper] Error 1
>>>>>>> make[2]: Leaving directory `{my_installation_directory}/opal/tools/wrappers'
>>>>>>> make[1]: *** [all-recursive] Error 1
>>>>>>> make[1]: Leaving directory `{my_installation_directory}/opal'
>>>>>>> make: *** [all-recursive] Error 1
>>>>>>> -------------------------------------
>>>>>>>
>>>>>>> I see that the libtool packaged with open-mpi is 2.2.6b
>>>>>>> When I try to compile this particular part with libtool versions 2.2.6
>>>>>>> or 2.4, I get the following error:
>>>>>>> -------------------------------------
>>>>>>> $ libtool --tag=CC --mode=link cc -O -DNDEBUG -fPIC
>>>>>>> -export-dynamic -o opal_wrapper opal_wrapper.o
>>>>>>> ../../../opal/libopen-pal.la -lnsl -lutil
>>>>>>> libtool: link: cc -O -DNDEBUG -fPIC -o .libs/opal_wrapper
>>>>>>> opal_wrapper.o -Wl,--export-dynamic
>>>>>>> ../../../opal/.libs/libopen-pal.so -ldl -lnsl -lutil -Wl,-rpath
>>>>>>> -Wl,{my_installation_directory}/lib
>>>>>>> /usr/bin/ld: attempted static link of dynamic object
>>>>>>> `../../../opal/.libs/libopen-pal.so'
>>>>>>> -------------------------------------
>>>>>>>
>>>>>>> Looking at earlier posts, apparently there was a bug with libtool a
>>>>>>> couple of years ago because of which the above error occurred. This
>>>>>>> was fixed in newer releases, but I am getting similar errors.
>>>>>>>
>>>>>>> Does anyone have any information on how to fix this, or if I am doing
>>>>>>> something wrong here?
>>>>>>>
>>>>>>> Thanks!
>>>>>>> _______________________________________________
>>>>>>> users mailing list
>>>>>>> users_at_[hidden]
>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>>>
>>>>>> _______________________________________________
>>>>>> users mailing list
>>>>>> users_at_[hidden]
>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>>
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> users_at_[hidden]
>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>
>>>>
>>>> _______________________________________________
>>>> users mailing list
>>>> users_at_[hidden]
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>
>>> _______________________________________________
>>> users mailing list
>>> users_at_[hidden]
>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>
>>
>> _______________________________________________
>> users mailing list
>> users_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users