Re: [OMPI users] 3.0.4, 4.0.1 build failure on OSX Mojave with LLVM
Hi George, Just to make sure I am communicating On 4/24/2019 9:25 AM, George Bosilca wrote: The configure AC_HEADER_STDC macro is considered obsolete [1] as most of the OSes are STDC compliant nowadays. Thanks. I read that and wonder why it is used if obsolete? To have it failing on a recent version of OSX, is therefore something unexpected. Moreover, many of the OMPI developers work on OSX Mojave with the default compiler but with the same system headers as you, so I expect the problem is not coming from the OS but from how your compiler has been installed. To add to this assumption I can successfully compile master and 4.0 on my laptop (Mojave) with the default compile, the macport clang 7.0 package, the macport gcc 7 and 8, and icc 19 20180804. I can also compile master and 4.0.1 using the system toolchain. What fails is my build using the tarball installed clang7-llvm. I will try the homebrew installed clang7-llvm. John I would start investigating with the most basic config.log you can provide (no STDC related flags), to see if we can figure out why autoconf fails to detect the STDC compliance. George. [1] https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/Particular-Headers.html On Wed, Apr 24, 2019 at 10:07 AM JR Cary via users mailto:users@lists.open-mpi.org>> wrote: On 4/24/19 7:25 AM, Gilles Gouaillardet wrote: > John, > > what if you move some parameters to CPPFLAGS and CXXCPPFLAGS (see the > new configure command line below) Thanks, Gilles, that did in fact work for 3.3.4. I was writing up an email when yours came in, so I'll move my response to here: Jeff, I've now tried several things, so I have some ideas, and I can send you one or more config.log's, as you wish. Will mention options at end of this. First, I got the compile to work, below, with -DOPAL_STDC_HEADERS added to CFLAGS, but then subsequent packages failed to build for not knowing ptrdiff_t. So it appeared that I would have to have -DOPAL_STDC_HEADERS set for all dependent packaged. So then I configured with CPPFLAGS set to the same as CFLAGS, and for 3.1.4, it configured, built, installed, and dependent packages did as well. For 4.0.1, it did not. Some responses below: A few notes on your configure line: > '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' \ > --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl \ > CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' \ > CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' \ The MPI C++ bindings are no longer built by default, and you're not enabling them (via --enable-mpi-cxx), so you don't need to specify CXX or CXXFLAGS here. Thanks for this and your other comments on how to minimize our configuration line. Will adopt. > FC='/opt/homebrew/bin/gfortran-6' \ > F77='/opt/homebrew/bin/gfortran-6' \ F77 is ignored these days; FC is the only one that matters. Thanks. Will clean up. > CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe -DSTDC_HEADERS' \ Do you need all these CFLAGS? E.g., does clang not -I that directory by default (I don't actually know if it is necessary or not)? What does -DSTDC_HEADERS do? -fvisibility=default: found needed for Boost, and kept through entire chain. May revisit. -mmacosx-version-min=10.10: Gives a build that is guaranteed to work back through Yosemite, when we distribute our binaries. -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include: Apple is now putting nothing in /usr/include. The sdk then provides its unique /usr/include above. However, the LLVM latest (which gives openmp), does not know that, and so it has to be told which /usr/include to use. One can install command-line tools, but then one cannot have several sdk's co-exist. -fPIC: duplicative given --with-pic, but no harm, passed to all our packages. -pipe: supposedly build performance, but I have not tested. I *think* -DSTDC_HEADERS is a hint to Apple (but not to openmpi) to use only headers consistent with stdc. Can you send all the information listed here: https://www.open-mpi.org/community/help/ I have the following builds/build attempts: 3.3.4: 1. Not adding -DOPAL_STDC_HEADERS: build fails. 2. Adding -DOPAL_STDC_HEADERS: build succeeds, hdf5 parallel build fails. 3. Not
Re: [OMPI users] 3.0.4, 4.0.1 build failure on OSX Mojave with LLVM
Jon, The configure AC_HEADER_STDC macro is considered obsolete [1] as most of the OSes are STDC compliant nowadays. To have it failing on a recent version of OSX, is therefore something unexpected. Moreover, many of the OMPI developers work on OSX Mojave with the default compiler but with the same system headers as you, so I expect the problem is not coming from the OS but from how your compiler has been installed. To add to this assumption I can successfully compile master and 4.0 on my laptop (Mojave) with the default compile, the macport clang 7.0 package, the macport gcc 7 and 8, and icc 19 20180804. I would start investigating with the most basic config.log you can provide (no STDC related flags), to see if we can figure out why autoconf fails to detect the STDC compliance. George. [1] https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/Particular-Headers.html On Wed, Apr 24, 2019 at 10:07 AM JR Cary via users wrote: > > > On 4/24/19 7:25 AM, Gilles Gouaillardet wrote: > > John, > > > > what if you move some parameters to CPPFLAGS and CXXCPPFLAGS (see the > > new configure command line below) > > Thanks, Gilles, that did in fact work for 3.3.4. I was writing up an email > when yours came in, so I'll move my response to here: > > Jeff, I've now tried several things, so I have some ideas, and I can > send you one > or more config.log's, as you wish. Will mention options at end of this. > > First, I got the compile to work, below, with -DOPAL_STDC_HEADERS added > to CFLAGS, > but then subsequent packages failed to build for not knowing ptrdiff_t. > So it > appeared that I would have to have -DOPAL_STDC_HEADERS set for all > dependent > packaged. So then I configured with CPPFLAGS set to the same as CFLAGS, > and > for 3.1.4, it configured, built, installed, and dependent packages did > as well. > For 4.0.1, it did not. > > Some responses below: > > A few notes on your configure line: > > > > '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' > \ > > > --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl > \ > > > CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' > \ > > > CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' > \ > The MPI C++ bindings are no longer built by default, and you're not > enabling them (via --enable-mpi-cxx), so you don't need to specify CXX or > CXXFLAGS here. > > Thanks for this and your other comments on how to minimize our > configuration > line. Will adopt. > > > >FC='/opt/homebrew/bin/gfortran-6' \ > >F77='/opt/homebrew/bin/gfortran-6' \ > F77 is ignored these days; FC is the only one that matters. > > Thanks. Will clean up. > > > >CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 > -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include > -fPIC -pipe -DSTDC_HEADERS' \ > Do you need all these CFLAGS? E.g., does clang not -I that directory > by default (I don't actually know if it is necessary or not)? What does > -DSTDC_HEADERS do? > > -fvisibility=default: found needed for Boost, and kept through entire > chain. May revisit. > > -mmacosx-version-min=10.10: Gives a build that is guaranteed to work back > through Yosemite, when > we distribute our binaries. > > -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include: > Apple is now putting nothing in /usr/include. The sdk then provides its > unique /usr/include above. However, the LLVM latest (which gives openmp), > does not know > that, and so it has to be told which /usr/include to use. > > One can install command-line tools, but then one cannot have several sdk's > co-exist. > > -fPIC: duplicative given --with-pic, but no harm, passed to all our > packages. > > -pipe: supposedly build performance, but I have not tested. > > I *think* -DSTDC_HEADERS is a hint to Apple (but not to openmpi) to use > only headers > consistent with stdc. > > Can you send all the information listed here: > > https://www.open-mpi.org/community/help/ > > I have the following builds/build attempts: > > 3.3.4: > > 1. Not adding -DOPAL_STDC_HEADERS: build fails. > > 2. Adding -DOPAL_STDC_HEADERS: build succeeds, hdf5 parallel build fails. > > 3. Not adding -DOPAL_STDC_HEADERS, but setting CPPFLAGS to be identical > to CFLAGS: > openmpi and hdf5-parallel builds both succeed. > > 4.0.1, best formula above (CPPFLAGS set to same as CFLAGS): > > 4. Fails to build for a different reason. > > Which would you like? > > Best..John > > > ___ > users mailing list > users@lists.open-mpi.org > https://lists.open-mpi.org/mailman/listinfo/users ___ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mai
Re: [OMPI users] 3.0.4, 4.0.1 build failure on OSX Mojave with LLVM
On 4/24/19 7:25 AM, Gilles Gouaillardet wrote: John, what if you move some parameters to CPPFLAGS and CXXCPPFLAGS (see the new configure command line below) Thanks, Gilles, that did in fact work for 3.3.4. I was writing up an email when yours came in, so I'll move my response to here: Jeff, I've now tried several things, so I have some ideas, and I can send you one or more config.log's, as you wish. Will mention options at end of this. First, I got the compile to work, below, with -DOPAL_STDC_HEADERS added to CFLAGS, but then subsequent packages failed to build for not knowing ptrdiff_t. So it appeared that I would have to have -DOPAL_STDC_HEADERS set for all dependent packaged. So then I configured with CPPFLAGS set to the same as CFLAGS, and for 3.1.4, it configured, built, installed, and dependent packages did as well. For 4.0.1, it did not. Some responses below: A few notes on your configure line: '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' \ --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl \ CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' \ CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' \ The MPI C++ bindings are no longer built by default, and you're not enabling them (via --enable-mpi-cxx), so you don't need to specify CXX or CXXFLAGS here. Thanks for this and your other comments on how to minimize our configuration line. Will adopt. FC='/opt/homebrew/bin/gfortran-6' \ F77='/opt/homebrew/bin/gfortran-6' \ F77 is ignored these days; FC is the only one that matters. Thanks. Will clean up. CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe -DSTDC_HEADERS' \ Do you need all these CFLAGS? E.g., does clang not -I that directory by default (I don't actually know if it is necessary or not)? What does -DSTDC_HEADERS do? -fvisibility=default: found needed for Boost, and kept through entire chain. May revisit. -mmacosx-version-min=10.10: Gives a build that is guaranteed to work back through Yosemite, when we distribute our binaries. -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include: Apple is now putting nothing in /usr/include. The sdk then provides its unique /usr/include above. However, the LLVM latest (which gives openmp), does not know that, and so it has to be told which /usr/include to use. One can install command-line tools, but then one cannot have several sdk's co-exist. -fPIC: duplicative given --with-pic, but no harm, passed to all our packages. -pipe: supposedly build performance, but I have not tested. I *think* -DSTDC_HEADERS is a hint to Apple (but not to openmpi) to use only headers consistent with stdc. Can you send all the information listed here: https://www.open-mpi.org/community/help/ I have the following builds/build attempts: 3.3.4: 1. Not adding -DOPAL_STDC_HEADERS: build fails. 2. Adding -DOPAL_STDC_HEADERS: build succeeds, hdf5 parallel build fails. 3. Not adding -DOPAL_STDC_HEADERS, but setting CPPFLAGS to be identical to CFLAGS: openmpi and hdf5-parallel builds both succeed. 4.0.1, best formula above (CPPFLAGS set to same as CFLAGS): 4. Fails to build for a different reason. Which would you like? Best..John ___ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users
Re: [OMPI users] 3.0.4, 4.0.1 build failure on OSX Mojave with LLVM
John, what if you move some parameters to CPPFLAGS and CXXCPPFLAGS (see the new configure command line below) Cheers, Gilles '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' \ --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl \ CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' \ CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' \ FC='/opt/homebrew/bin/gfortran-6' \ F77='/opt/homebrew/bin/gfortran-6' \ CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 -fPIC -pipe' \ CPPFLAGS='-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -DSTDC_HEADERS' \ CXXFLAGS='-std=c++11 -stdlib=libc++ -fvisibility=default -mmacosx-version-min=10.10 -fPIC -pipe' \ CXXCPFLAGS='-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include' \ FCFLAGS='-fPIC -pipe' \ --enable-static \ --with-pic \ --disable-dlopen \ --enable-mpirun-prefix-by-default On Wed, Apr 24, 2019 at 7:01 PM Jeff Squyres (jsquyres) via users wrote: > > Can you send at least your config.log file? It would be good to know why the > "STDC" test is reporting that this setup does not have STDC headers when it > actually does. > > > > On Apr 23, 2019, at 8:14 PM, John R. Cary wrote: > > > > It appears that the problem is with AC_HEADER_STDC, which is reporting > > that this setup does not have stdc headers when in fact it does. > > > > Overriding with > > > > CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 > > -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include > > -fPIC -pipe -DSTDC_HEADERS -DOPAL_STDC_HEADERS' > > > > in particular, the last two defines, fixes this. > > > > .John > > > > > > > > On 4/23/2019 4:59 PM, Jeff Squyres (jsquyres) wrote: > >> The version of LLVM that I have installed on my Mac 10.14.4 is: > >> > >> $ where clang > >> /usr/bin/clang > >> $ clang --version > >> Apple LLVM version 10.0.1 (clang-1001.0.46.4) > >> Target: x86_64-apple-darwin18.5.0 > >> Thread model: posix > >> InstalledDir: > >> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin > >> > >> I don't know how that compares to upstream clang v7.x...? > >> > >> More below. > >> > >> > >> > >>> On Apr 23, 2019, at 6:26 PM, John R. Cary via users > >>> wrote: > >>> > >>> The failure is > >>> > >>> In file included from > >>> /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/datatype/ompi_datatype_external.c:29: > >>> In file included from > >>> /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/communicator/communicator.h:38: > >>> In file included from > >>> /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/errhandler/errhandler.h:33: > >>> ../../ompi/include/mpi.h:397:9: error: unknown type name 'ptrdiff_t' > >>> typedef OMPI_MPI_AINT_TYPE MPI_Aint; > >>> ^ > >>> ../../opal/include/opal_config.h:1911:28: note: expanded from macro > >>> 'OMPI_MPI_AINT_TYPE' > >>> #define OMPI_MPI_AINT_TYPE ptrdiff_t > >>> > >>> > >>> Is there a known fix for this? > >>> > >>> Thx...John Cary > >>> > >>> > >>> More info: > >>> > >>> Configured with > >>> > >> A few notes on your configure line: > >> > >>> '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' > >>> \ > >>> --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl > >>> \ > >>> CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' > >>> \ > >>> CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' > >>> \ > >> The MPI C++ bindings are no longer built by default, and you're not > >> enabling them (via --enable-mpi-cxx), so you don't need to specify CXX or > >> CXXFLAGS here. > >> > >>> FC='/opt/homebrew/bin/gfortran-6' \ > >>> F77='/opt/homebrew/bin/gfortran-6' \ > >> F77 is ignored these days; FC is the only one that matters. > >> > >>> CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 > >>> -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include > >>> -fPIC -pipe -DSTDC_HEADERS' \ > >> Do you need all these CFLAGS? E.g., does clang not -I that directory by > >> default (I don't actually know if it is necessary or not)? What does > >> -DSTDC_HEADERS do? > >> > >>> CXXFLAGS='-std=c++11 -stdlib=libc++ -fvisibility=default > >>> -mmacosx-version-min=10.10 > >>> -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include > >>> -fPIC -pipe' \ > >>> FCFLAGS='-fPIC -pipe' \ > >>> --enable-static \ > >>> --with-pic \ > >>> --disable-dlopen \ > >>> --enable-mpirun-prefix-by-default > >> I don't have that version of clang, b
Re: [OMPI users] 3.0.4, 4.0.1 build failure on OSX Mojave with LLVM
Can you send at least your config.log file? It would be good to know why the "STDC" test is reporting that this setup does not have STDC headers when it actually does. > On Apr 23, 2019, at 8:14 PM, John R. Cary wrote: > > It appears that the problem is with AC_HEADER_STDC, which is reporting > that this setup does not have stdc headers when in fact it does. > > Overriding with > > CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 > -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include > -fPIC -pipe -DSTDC_HEADERS -DOPAL_STDC_HEADERS' > > in particular, the last two defines, fixes this. > > .John > > > > On 4/23/2019 4:59 PM, Jeff Squyres (jsquyres) wrote: >> The version of LLVM that I have installed on my Mac 10.14.4 is: >> >> $ where clang >> /usr/bin/clang >> $ clang --version >> Apple LLVM version 10.0.1 (clang-1001.0.46.4) >> Target: x86_64-apple-darwin18.5.0 >> Thread model: posix >> InstalledDir: >> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin >> >> I don't know how that compares to upstream clang v7.x...? >> >> More below. >> >> >> >>> On Apr 23, 2019, at 6:26 PM, John R. Cary via users >>> wrote: >>> >>> The failure is >>> >>> In file included from >>> /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/datatype/ompi_datatype_external.c:29: >>> In file included from >>> /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/communicator/communicator.h:38: >>> In file included from >>> /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/errhandler/errhandler.h:33: >>> ../../ompi/include/mpi.h:397:9: error: unknown type name 'ptrdiff_t' >>> typedef OMPI_MPI_AINT_TYPE MPI_Aint; >>> ^ >>> ../../opal/include/opal_config.h:1911:28: note: expanded from macro >>> 'OMPI_MPI_AINT_TYPE' >>> #define OMPI_MPI_AINT_TYPE ptrdiff_t >>> >>> >>> Is there a known fix for this? >>> >>> Thx...John Cary >>> >>> >>> More info: >>> >>> Configured with >>> >> A few notes on your configure line: >> >>> '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' >>> \ >>> --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl >>> \ >>> CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' >>> \ >>> CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' >>> \ >> The MPI C++ bindings are no longer built by default, and you're not enabling >> them (via --enable-mpi-cxx), so you don't need to specify CXX or CXXFLAGS >> here. >> >>> FC='/opt/homebrew/bin/gfortran-6' \ >>> F77='/opt/homebrew/bin/gfortran-6' \ >> F77 is ignored these days; FC is the only one that matters. >> >>> CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 >>> -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include >>> -fPIC -pipe -DSTDC_HEADERS' \ >> Do you need all these CFLAGS? E.g., does clang not -I that directory by >> default (I don't actually know if it is necessary or not)? What does >> -DSTDC_HEADERS do? >> >>> CXXFLAGS='-std=c++11 -stdlib=libc++ -fvisibility=default >>> -mmacosx-version-min=10.10 >>> -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include >>> -fPIC -pipe' \ >>> FCFLAGS='-fPIC -pipe' \ >>> --enable-static \ >>> --with-pic \ >>> --disable-dlopen \ >>> --enable-mpirun-prefix-by-default >> I don't have that version of clang, but I installed gfortran 6.3.0 via >> homebrew and configured with: >> >> ./configure --prefix=/Users/jsquyres/bogus CC=clang FC=gfortran >> 'CFLAGS=-fvisibility=default -mmacosx-version-min=10.10 >> -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include >> -fPIC -pipe -DSTDC_HEADERS' 'FCFLAGS=-fPIC -pipe' --enable-static >> --with-pic --disable-dlopen --enable-mpirun-prefix-by-default >> >> And Open MPI v4.0.1 build ok for me...? >> >> Can you send all the information listed here: >> >> https://www.open-mpi.org/community/help/ >> > -- Jeff Squyres jsquy...@cisco.com ___ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users
Re: [OMPI users] 3.0.4, 4.0.1 build failure on OSX Mojave with LLVM
It appears that the problem is with AC_HEADER_STDC, which is reporting that this setup does not have stdc headers when in fact it does. Overriding with CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe -DSTDC_HEADERS -DOPAL_STDC_HEADERS' in particular, the last two defines, fixes this. .John On 4/23/2019 4:59 PM, Jeff Squyres (jsquyres) wrote: The version of LLVM that I have installed on my Mac 10.14.4 is: $ where clang /usr/bin/clang $ clang --version Apple LLVM version 10.0.1 (clang-1001.0.46.4) Target: x86_64-apple-darwin18.5.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin I don't know how that compares to upstream clang v7.x...? More below. On Apr 23, 2019, at 6:26 PM, John R. Cary via users wrote: The failure is In file included from /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/datatype/ompi_datatype_external.c:29: In file included from /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/communicator/communicator.h:38: In file included from /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/errhandler/errhandler.h:33: ../../ompi/include/mpi.h:397:9: error: unknown type name 'ptrdiff_t' typedef OMPI_MPI_AINT_TYPE MPI_Aint; ^ ../../opal/include/opal_config.h:1911:28: note: expanded from macro 'OMPI_MPI_AINT_TYPE' #define OMPI_MPI_AINT_TYPE ptrdiff_t Is there a known fix for this? Thx...John Cary More info: Configured with A few notes on your configure line: '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' \ --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl \ CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' \ CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' \ The MPI C++ bindings are no longer built by default, and you're not enabling them (via --enable-mpi-cxx), so you don't need to specify CXX or CXXFLAGS here. FC='/opt/homebrew/bin/gfortran-6' \ F77='/opt/homebrew/bin/gfortran-6' \ F77 is ignored these days; FC is the only one that matters. CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe -DSTDC_HEADERS' \ Do you need all these CFLAGS? E.g., does clang not -I that directory by default (I don't actually know if it is necessary or not)? What does -DSTDC_HEADERS do? CXXFLAGS='-std=c++11 -stdlib=libc++ -fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe' \ FCFLAGS='-fPIC -pipe' \ --enable-static \ --with-pic \ --disable-dlopen \ --enable-mpirun-prefix-by-default I don't have that version of clang, but I installed gfortran 6.3.0 via homebrew and configured with: ./configure --prefix=/Users/jsquyres/bogus CC=clang FC=gfortran 'CFLAGS=-fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe -DSTDC_HEADERS' 'FCFLAGS=-fPIC -pipe' --enable-static --with-pic --disable-dlopen --enable-mpirun-prefix-by-default And Open MPI v4.0.1 build ok for me...? Can you send all the information listed here: https://www.open-mpi.org/community/help/ ___ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users
Re: [OMPI users] 3.0.4, 4.0.1 build failure on OSX Mojave with LLVM
The version of LLVM that I have installed on my Mac 10.14.4 is: $ where clang /usr/bin/clang $ clang --version Apple LLVM version 10.0.1 (clang-1001.0.46.4) Target: x86_64-apple-darwin18.5.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin I don't know how that compares to upstream clang v7.x...? More below. > On Apr 23, 2019, at 6:26 PM, John R. Cary via users > wrote: > > The failure is > > In file included from > /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/datatype/ompi_datatype_external.c:29: > > In file included from > /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/communicator/communicator.h:38: > > In file included from > /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/errhandler/errhandler.h:33: > > ../../ompi/include/mpi.h:397:9: error: unknown type name 'ptrdiff_t' > typedef OMPI_MPI_AINT_TYPE MPI_Aint; > ^ > ../../opal/include/opal_config.h:1911:28: note: expanded from macro > 'OMPI_MPI_AINT_TYPE' > #define OMPI_MPI_AINT_TYPE ptrdiff_t > > > Is there a known fix for this? > > Thx...John Cary > > > More info: > > Configured with > A few notes on your configure line: > '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' \ > --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl > \ > CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' > \ > CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' > \ The MPI C++ bindings are no longer built by default, and you're not enabling them (via --enable-mpi-cxx), so you don't need to specify CXX or CXXFLAGS here. > FC='/opt/homebrew/bin/gfortran-6' \ > F77='/opt/homebrew/bin/gfortran-6' \ F77 is ignored these days; FC is the only one that matters. > CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 > -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include > -fPIC -pipe -DSTDC_HEADERS' \ Do you need all these CFLAGS? E.g., does clang not -I that directory by default (I don't actually know if it is necessary or not)? What does -DSTDC_HEADERS do? > CXXFLAGS='-std=c++11 -stdlib=libc++ -fvisibility=default > -mmacosx-version-min=10.10 > -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include > -fPIC -pipe' \ > FCFLAGS='-fPIC -pipe' \ > --enable-static \ > --with-pic \ > --disable-dlopen \ > --enable-mpirun-prefix-by-default I don't have that version of clang, but I installed gfortran 6.3.0 via homebrew and configured with: ./configure --prefix=/Users/jsquyres/bogus CC=clang FC=gfortran 'CFLAGS=-fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe -DSTDC_HEADERS' 'FCFLAGS=-fPIC -pipe' --enable-static --with-pic --disable-dlopen --enable-mpirun-prefix-by-default And Open MPI v4.0.1 build ok for me...? Can you send all the information listed here: https://www.open-mpi.org/community/help/ -- Jeff Squyres jsquy...@cisco.com ___ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users
[OMPI users] 3.0.4, 4.0.1 build failure on OSX Mojave with LLVM
The failure is In file included from /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/datatype/ompi_datatype_external.c:29: In file included from /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/communicator/communicator.h:38: In file included from /Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../ompi/errhandler/errhandler.h:33: ../../ompi/include/mpi.h:397:9: error: unknown type name 'ptrdiff_t' typedef OMPI_MPI_AINT_TYPE MPI_Aint; ^ ../../opal/include/opal_config.h:1911:28: note: expanded from macro 'OMPI_MPI_AINT_TYPE' #define OMPI_MPI_AINT_TYPE ptrdiff_t Is there a known fix for this? Thx...John Cary More info: Configured with '/Users/cary/projects/ulixesall-llvm/builds/openmpi-4.0.1/nodl/../configure' \ --prefix=/Volumes/GordianStorage/opt/contrib-llvm7_appleclang/openmpi-4.0.1-nodl \ CC='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang' \ CXX='/Volumes/GordianStorage/opt/clang+llvm-7.0.0-x86_64-apple-darwin/bin/clang++' \ FC='/opt/homebrew/bin/gfortran-6' \ F77='/opt/homebrew/bin/gfortran-6' \ CFLAGS='-fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe -DSTDC_HEADERS' \ CXXFLAGS='-std=c++11 -stdlib=libc++ -fvisibility=default -mmacosx-version-min=10.10 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -fPIC -pipe' \ FCFLAGS='-fPIC -pipe' \ --enable-static \ --with-pic \ --disable-dlopen \ --enable-mpirun-prefix-by-default ___ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users