I agree w/ Jeff that we really should only enumerate "bad" compilers (blacklist rather than whitelist).  However, as Larry points out, "gcc" is not as clearly defined as it once was.

Currently I know of both Apple and Oracle shipping compilers with the gcc front-end and "other" backend (llvm from Apple, and the Solaris Studio backend for Oracle).  IBM also ships a "patched up" gcc variant (known as Advance Toolchain or "AT"), with an updated backend for their latest CPUs, but at least those are just mods (not replacements) of the gcc backends.

In the Oracle case, there are systems where "gccfss" gets installed as /usr/bin/gcc.  In this case, my v1.5 testing determined, and Oracle agreed, that gccfss is inappropriate for building Open MPI.  So, Terry D added configure logic to reject "gccfss".  This compiler is clearly delineated from other "gcc" cases by that configure logic (and perhaps the README?).

In the case of Apple Xcode the *only* gcc provided by Xcode 4.2 is "llvm-gcc" (I don't know about Xcode 4.1 or 4.0).  However, my testing on MacOS 10.7 has NOT turned up anything that hints at any compiler-specific bugs.  So, lets just agree to call this "gcc" for the purpose of the README.

In the IBM case I have also tested and found NO compile-specific issues, and am therefore content with continuing to treat IBM's "AT" compilers just as any other "gcc".

So, my point of view is that one should treat "gcc the command" the same as "gcc the compiler" UNLESS (as with gccfss) there is a known issue to recommend otherwise.  Even if a given user knows enough to make the distinction, there is currently no "need" for them to do so.  If it quacks like a duck...

-Paul

On Thu, Feb 23, 2012 at 11:07 AM, Larry Baker <baker@usgs.gov> wrote:
I'm not yet using the Mac OS X LLVM compilers.  I have been under the impression that LLVM compilers are not GNU compilers.  However, given the names llvm-gcc-x.x, I guess they are some sort of hybrid.  (gcc front end, LLVM backend?)  I agree with Jeff's point about not getting too specific about gcc version numbers unless there are known problems.  However, if someone told me that gcc was supported, I would not automatically assume that meant llvm-gcc.  As Paul showed us, the "gcc" command on Mac OS X 10.7 is a soft link to an llvm-gcc compiler, not a gcc compiler.  When we say that "gcc" is supported, is that intended to mean the command or the compiler?  I would assume it meant the latter.

Larry Baker
US Geological Survey
650-329-5608
baker@usgs.gov

On 23 Feb 2012, at 4:44 AM, Jeffrey Squyres wrote:

I don't think I want to get specific about the gcc versions on any platform, unless we know that they *don't* work.  There's too many versions and variants of gcc out there to have an inclusive list -- I'd rather have an *exclusive* list.


On Feb 23, 2012, at 3:39 AM, Paul Hargrove wrote:

And here is the 10.7 machine as promised:

ProductName:    Mac OS X
ProductVersion: 10.7.3
BuildVersion:   11D50b
lrwxr-xr-x  1 root  wheel  12 Oct 27 14:01 /usr/bin/gcc -> llvm-gcc-4.2

-Paul

On Wed, Feb 22, 2012 at 7:44 PM, Paul H. Hargrove <PHHargrove@lbl.gov> wrote:
I can get exact info from my MacOS 10.7 machine later, but its gcc is llvm-gcc-4.2 IIRC.
Here are my 10.5 and 10.6:

ProductName:    Mac OS X
ProductVersion: 10.5.8
BuildVersion:   9L31a
powerpc
lrwxr-xr-x  1 root  wheel       7 Nov  1  2008 /usr/bin/gcc -> gcc-4.0
-r-xr-xr-x  1 root  wheel  258368 Feb 19  2008 /usr/bin/gcc-3.3
-rwxr-xr-x  1 root  wheel   93088 Jul 17  2008 /usr/bin/gcc-4.0
-rwxr-xr-x  1 root  wheel  105680 May 18  2008 /usr/bin/gcc-4.2

ProductName:    Mac OS X
ProductVersion: 10.5.8
BuildVersion:   9L30
i386
lrwxr-xr-x  1 root  wheel      7 Nov  8  2007 /usr/bin/gcc -> gcc-4.0
-rwxr-xr-x  1 root  wheel  93072 Sep 23  2007 /usr/bin/gcc-4.0

ProductName:    Mac OS X
ProductVersion: 10.6.8
BuildVersion:   10K549
i386
lrwxr-xr-x  1 root  wheel       7 Sep 29  2009 /usr/bin/gcc -> gcc-4.2
-rwxr-xr-x  1 root  wheel   97392 May 18  2009 /usr/bin/gcc-4.0
-rwxr-xr-x  1 root  wheel  166128 May 18  2009 /usr/bin/gcc-4.2


On 2/22/2012 6:13 PM, Larry Baker wrote:
Paul,

Haven't you been running Intel compilers on OS X?

Also, do we have specifics about which gcc's on Mac OS X?  I have (OS X 10.5.8):

savaii:~ baker$ ls -l /usr/bin/gcc*
lrwxr-xr-x  1 root  wheel       7 Oct  2  2009 /usr/bin/gcc -> gcc-4.0
-r-xr-xr-x  1 root  wheel  258368 Feb 19  2008 /usr/bin/gcc-3.3
-rwxr-xr-x  1 root  wheel   93088 Feb  5  2009 /usr/bin/gcc-4.0
-rwxr-xr-x  1 root  wheel  105680 Apr 27  2009 /usr/bin/gcc-4.2

savaii:~ baker$ ls -l /usr/bin/cc*
lrwxr-xr-x  1 root  wheel  7 Oct  2  2009 /usr/bin/cc -> gcc-4.0

savaii:~ baker$ ls /Developer/usr/llvm-gcc-4.2/bin/*cc*
/Developer/usr/llvm-gcc-4.2/bin/i686-apple-darwin9-llvm-gcc-4.2
/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2
/Developer/usr/llvm-gcc-4.2/bin/powerpc-apple-darwin9-llvm-gcc-4.2

Larry Baker
US Geological Survey
650-329-5608
baker@usgs.gov

On 22 Feb 2012, at 5:55 PM, Paul H. Hargrove wrote:

Folks at Oracle should decide, but I suspect "Solaris 10" should be updated to "Solaris 10 and 11", or just "11".

-Paul

On 2/22/2012 2:44 PM, Jeffrey Squyres wrote:
Please verify this list of supported systems for the v1.5.5 release:

- The run-time systems that are currently supported are:
 - rsh / ssh
 - LoadLeveler
 - PBS Pro, Open PBS, Torque
 - Platform LSF (v7.0.2 and later)
 - SLURM
 - Cray XT-3, XT-4, and XT-5
 - Oracle Grid Engine (OGE) 6.1, 6.2 and open source Grid Engine
 - Microsoft Windows CCP (Microsoft Windows server 2003 and 2008)

- Systems that have been tested are:
 - Linux (various flavors/distros), 32 bit, with gcc, and Oracle
  Solaris Studio 12
 - Linux (various flavors/distros), 64 bit (x86), with gcc, Absoft,
  Intel, Portland, and Oracle Solaris Studio 12 compilers (*)
 - OS X (10.5, 10.6, 10.7), 32 and 64 bit (x86_64), with gcc and
  Absoft compilers (*)
 - Oracle Solaris 10, 32 and 64 bit (SPARC, i386, x86_64), with
  Oracle Solaris Studio 12

 (*) Be sure to read the Compiler Notes, below.

- Other systems have been lightly (but not fully tested):
 - Other 64 bit platforms (e.g., Linux on PPC64)
 - Microsoft Windows CCP (Microsoft Windows server 2003 and 2008);
  see the README.WINDOWS file.


--
Paul H. Hargrove                          PHHargrove@lbl.gov
Future Technologies Group
HPC Research Department                   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900

_______________________________________________
devel mailing list
devel@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel



_______________________________________________
devel mailing list

devel@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel

--
Paul H. Hargrove
PHHargrove@lbl.gov

Future Technologies Group
HPC Research Department                   Tel:
+1-510-495-2352

Lawrence Berkeley National Laboratory     Fax:
+1-510-486-6900

_______________________________________________
devel mailing list
devel@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel



--
Paul H. Hargrove                          PHHargrove@lbl.gov
Future Technologies Group
HPC Research Department                   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900
_______________________________________________
devel mailing list
devel@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel


--
Jeff Squyres
jsquyres@cisco.com
For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/


_______________________________________________
devel mailing list
devel@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel

_______________________________________________
devel mailing list
devel@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel



--
Paul H. Hargrove                          PHHargrove@lbl.gov
Future Technologies Group
HPC Research Department                   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900