Oops; it looks like there's 2 chunks of usNIC code in the 1.10.x code base, and --without-usnic only disables one of them.
I do believe we fixed that in a later 1.10.x release -- I am guessing you don't want to upgrade to v3.0.x for compatibility/testing reasons, but do you think you could move to a later v1.10.x release (which should be just bug fixes compared to 1.10.2)? If you can upgrade to v1.10.7, this should work: ./configure --without-usnic --without-verbs-usnic ... Sidenote: it's actually also possible that v1.10.7 will either correctly ignore or correctly compile usNIC on your system (without any extra command line options) -- we may have fixed that bug by v1.10.7; I honestly don't remember offhand. If you can't move to v1.10.7, I think you should be able to use the following with v1.10.2 too disable the BTL usNIC component and the verbs_usnic common component: ./configure --without-usnic --enable-mca-no-build=common-verbs_usnic ... > On Feb 28, 2018, at 11:55 AM, William T Jones <w.t.jo...@nasa.gov> wrote: > > Unfortunately, that does not work. > > % ./configure --enable-static \ > --with-tm=/usr/local/pkgs/PBSPro_64 \ > --enable-mpi-thread-multiple \ > --with-verbs=/usr \ > --without-usnic \ > --enable-mpi-cxx \ > FC=ifort \ > F77=ifort \ > CC=icc \ > CXX=icpc \ > CFLAGS="-O3 -ip" \ > FCFLAGS="-O3 -ip" \ > LIBS="-lcrypto -lpthread" > > ... > Making all in mca/common/verbs_usnic > make[2]: Entering directory > `/misc/home2/wtjones1/GIT/fun3d/misc/module-builder/k/openmpi/openmpi-1.10.2/ompi/mca/common/verbs_usnic' > > CC libmca_common_verbs_usnic_la-common_verbs_usnic_fake.lo > common_verbs_usnic_fake.c(72): error: struct "ibv_device" has no field "ops" > .ops = { > ^ > > common_verbs_usnic_fake.c(89): warning #266: function "ibv_read_sysfs_file" > declared implicitly > if (ibv_read_sysfs_file(uverbs_sys_path, "device/vendor", > ^ > > common_verbs_usnic_fake.c(133): warning #266: function "ibv_register_driver" > declared implicitly > ibv_register_driver("usnic_verbs", fake_driver_init); > ^ > > compilation aborted for common_verbs_usnic_fake.c (code 2) > > > On 02/28/2018 11:10 AM, r...@open-mpi.org wrote: >> Not unless you have a USNIC card in your machine! >>> On Feb 28, 2018, at 8:08 AM, William T Jones <w.t.jo...@nasa.gov> wrote: >>> >>> Thank you! >>> >>> Will that have any adverse side effects? >>> Performance penalties? >>> >>> On 02/28/2018 10:57 AM, r...@open-mpi.org wrote: >>>> Add --without-usnic >>>>> On Feb 28, 2018, at 7:50 AM, William T Jones <w.t.jo...@nasa.gov> wrote: >>>>> >>>>> I realize that OpenMPI 1.10.2 is quite old, however, for compatibility I >>>>> am attempting to compile it after a system upgrade to CentOS 7. >>>>> >>>>> This system does include infiniband and I have configured as follows >>>>> using Intel 2017.2.174 compilers: >>>>> >>>>> % ./configure --enable-static \ >>>>> --with-tm=/usr/local/pkgs/PBSPro_64 \ >>>>> --enable-mpi-thread-multiple \ >>>>> --with-verbs=/usr \ >>>>> --enable-mpi-cxx \ >>>>> FC=ifort \ >>>>> F77=ifort \ >>>>> CC=icc \ >>>>> CXX=icpc \ >>>>> CFLAGS="-O3 -ip" \ >>>>> FCFLAGS="-O3 -ip" \ >>>>> LIBS=-lcrypto -lpthread >>>>> >>>>> However, when I compile I get the following error: >>>>> >>>>> ... >>>>> Making all in mca/common/verbs_usnic >>>>> make[2]: Entering directory >>>>> `/usr/src/openmpi-1.10.2/ompi/mca/common/verbs_usnic' >>>>> CC libmca_common_verbs_usnic_la-common_verbs_usnic_fake.lo >>>>> common_verbs_usnic_fake.c(72): error: struct "ibv_device" has no field >>>>> "ops" >>>>> .ops = { >>>>> ^ >>>>> >>>>> common_verbs_usnic_fake.c(89): warning #266: function >>>>> "ibv_read_sysfs_file" declared implicitly >>>>> if (ibv_read_sysfs_file(uverbs_sys_path, "device/vendor", >>>>> ^ >>>>> >>>>> common_verbs_usnic_fake.c(133): warning #266: function >>>>> "ibv_register_driver" declared implicitly >>>>> ibv_register_driver("usnic_verbs", fake_driver_init); >>>>> ^ >>>>> >>>>> compilation aborted for common_verbs_usnic_fake.c (code 2) >>>>> >>>>> >>>>> Unfortunately, my /usr/include/infiniband/verbs.h file defines the >>>>> "ibv_device" structure but does not include "ops" member. Instead the >>>>> structure is defined as follows: >>>>> >>>>> /* Obsolete, never used, do not touch */ >>>>> struct _ibv_device_ops { >>>>> struct ibv_context * (*_dummy1)(struct ibv_device *device, >>>>> int cmd_fd); >>>>> void (*_dummy2)(struct ibv_context *context); >>>>> }; >>>>> >>>>> enum { >>>>> IBV_SYSFS_NAME_MAX = 64, >>>>> IBV_SYSFS_PATH_MAX = 256 >>>>> }; >>>>> >>>>> struct ibv_device { >>>>> struct _ibv_device_ops _ops; >>>>> enum ibv_node_type node_type; >>>>> enum ibv_transport_type transport_type; >>>>> /* Name of underlying kernel IB device, eg "mthca0" */ >>>>> char name[IBV_SYSFS_NAME_MAX]; >>>>> /* Name of uverbs device, eg "uverbs0" */ >>>>> char dev_name[IBV_SYSFS_NAME_MAX]; >>>>> /* Path to infiniband_verbs class device in sysfs */ >>>>> char dev_path[IBV_SYSFS_PATH_MAX]; >>>>> /* Path to infiniband class device in sysfs */ >>>>> char ibdev_path[IBV_SYSFS_PATH_MAX]; >>>>> }; >>>>> >>>>> >>>>> OpenMPI was previously compiled successfully under CentOS 6 and every >>>>> indication is that the /usr/include/infiniband/verbs.h was defined >>>>> similarly (again without the "ops" member). >>>>> >>>>> Is it possible that there is a configure option that prevents this source >>>>> from being included in the build? >>>>> >>>>> Any help is appreciated, >>>>> >>>>> >>>>> -- >>>>> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- >>>>> >>>>> Bill Jones w.t.jo...@nasa.gov >>>>> Mail Stop 128 Computational AeroSciences Branch >>>>> 15 Langley Boulevard Research Directorate >>>>> NASA Langley Research Center Building 1268, Room 1044 >>>>> Hampton, VA 23681-2199 Phone +1 757 864-5318 >>>>> Fax +1 757 864-8816 >>>>> http://fun3d.larc.nasa.gov >>>>> _______________________________________________ >>>>> 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/mailman/listinfo/users >>> >>> -- >>> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- >>> >>> Bill Jones w.t.jo...@nasa.gov >>> Mail Stop 128 Computational AeroSciences Branch >>> 15 Langley Boulevard Research Directorate >>> NASA Langley Research Center Building 1268, Room 1044 >>> Hampton, VA 23681-2199 Phone +1 757 864-5318 >>> Fax +1 757 864-8816 >>> http://fun3d.larc.nasa.gov >>> _______________________________________________ >>> 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/mailman/listinfo/users > > -- > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- > > Bill Jones w.t.jo...@nasa.gov > Mail Stop 128 Computational AeroSciences Branch > 15 Langley Boulevard Research Directorate > NASA Langley Research Center Building 1268, Room 1044 > Hampton, VA 23681-2199 Phone +1 757 864-5318 > Fax +1 757 864-8816 > http://fun3d.larc.nasa.gov > <config.log.gz>_______________________________________________ > users mailing list > users@lists.open-mpi.org > https://lists.open-mpi.org/mailman/listinfo/users -- Jeff Squyres jsquy...@cisco.com _______________________________________________ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users