Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] problems compiling openmpi-1.6 on some platforms
From: Siegmar Gross (Siegmar.Gross_at_[hidden])
Date: 2012-06-08 08:48:59


> >>> Unfortunately "cc" on Linux creates the following error.
> >>>
> >>> ln -s "../../../openmpi-1.6/opal/asm/generated/
> >>> atomic-ia32-linux-nongas.s" atomic-asm.S
> >>> CPPAS atomic-asm.lo
> >>> <command-line>:19:0: warning: "__FLT_EVAL_METHOD__" redefined
> >>> [enabled by default]
> >>> <built-in>:110:0: note: this is the location of the previous definition
> >>> cpp: fatal error: -fuse-linker-plugin, but not found
> >>> compilation terminated.
> >>> cc: cpp failed for atomic-asm.S
> >>> make[2]: *** [atomic-asm.lo] Error 1
> >>> make[2]: Leaving directory `/.../opal/asm'
> >>> make[1]: *** [all-recursive] Error 1
> >>> make[1]: Leaving directory `/.../opal'
> >>> make: *** [all-recursive] Error 1
> >>
> >> What compiler is "cc"?
> >
> > "Sun C 5.12" (Oracle Solaris Studio 12.3 for Linux). Do you need
> > anything else?
> Ah. I will have to defer this to my Oracle brethren, then...

Today I edited ".../openmpi-1.6-Linux.x86_64.64_cc/libtool, removed
"|-fuse-linker-plugin" in line 6295 and started "config.status"
once more. Afterwards I could compile and install Open MPI. Can
somebody fix this problem in libtool? There was one more warning:

log.make.Linux.x86_64.64_cc:configure: WARNING: unrecognized options:

Furthermore there is a stale link:

tyr src 627 ls /usr/local/openmpi-1.6_64_cc/share/man/man1/orteCC.1
ls: /usr/local/openmpi-1.6_64_cc/share/man/man1/orteCC.1:
  No such file or directory
tyr src 628 ls -l /usr/local/openmpi-1.6_64_cc/share/man/man1/orteCC.1
lrwxrwxrwx 1 root root 9 Jun 8 13:34
  /usr/local/openmpi-1.6_64_cc/share/man/man1/orteCC.1 -> ortec++.1

Should it be linked to mpic++.1?

I found another warning with Sun C 5.12 which shouldn't be a problem.

configure:54329: checking stdbool.h usability
configure:54329: cc -c -O -DNDEBUG -m64 conftest.c >&5
"/usr/include/stdbool.h", line 42: #error: "Use of <stdbool.h>
  is valid only in a c99 compilation environment."
cc: acomp failed for conftest.c
configure:54329: $? = 2
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "Open MPI"
| #define PACKAGE_TARNAME "openmpi"
| #define PACKAGE_VERSION ""
| #include <stdbool.h>
configure:54329: result: no
configure:54329: checking stdbool.h presence
configure:54329: cpp conftest.c
configure:54329: $? = 0
configure:54329: result: yes
configure:54329: WARNING: stdbool.h: present but cannot be compiled
configure:54329: WARNING: stdbool.h: check for missing prerequisite headers?
configure:54329: WARNING: stdbool.h: see the Autoconf documentation
configure:54329: WARNING: stdbool.h: section "Present But Cannot Be
configure:54329: WARNING: stdbool.h: proceeding with the compiler's result
configure:54329: checking for stdbool.h
configure:54329: result: no
configure:54341: checking if <stdbool.h> works
configure:54374: result: no (don't have <stdbool.h>)

I wrote the above definitions and includes into a file and added a
main function.

cc -c -O -DNDEBUG -m64 stdbool_error.c
  "/usr/include/stdbool.h", line 42: #error: "Use of <stdbool.h>
  is valid only in a c99 compilation environment."
  cc: acomp failed for stdbool_error.c

cc -c -xc99 -O -DNDEBUG -m64 stdbool_error.c

We need "-xc99" if "stdbool.h" should be used.

Kind regards