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