Skip to content

Problem with Cygwin, MPI and OLB

OpenLB – Open Source Lattice Boltzmann Code Forums on OpenLB General Topics Problem with Cygwin, MPI and OLB

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #2006
    ERodriguez
    Member

    I am having problems with the compilation of OLB using MPI in cygwin.

    Here are the details:

    Code:
    –>cygcheck -c | grep cygwin

    base-cygwin 3.8-1
    cygwin 2.11.2-1
    cygwin-devel 2.11.2-1

    I have installed all the required packages of cygwin as described in the technical report #4.

    However, when I try to compile the cylinder3d with MPI 3.1.2 (modifying accordingly the config.mk file) example by just typing

    Code:
    make clean
    make cleanbuild
    make

    I receive the following error:

    Quote:
    /usr/lib/gcc/x86_64-pc-cygwin/7.3.0/../../../../x_86-64-pc-cygwin/bin/ld: could not find -lmpi_cxx

    I have made a bit (a lot) of googling and I have come to the understanding that MPI stopped supporting C++ builds in a recent release. Hence ”-lmpi_cxx” was not found in cygwin because it does not install it anymore.

    A potential answer would be to install a previous version of cygwin which contains an older version of MPI which still supports C++ compilation. However, this has not been succesful so far, since I have not found such a release.

    So I am looking for help in the forum. Have you recently come accross a similar problem? Is there any way to go around this in Windows without an older cygwin? Or, alternatively, where can I find an older version of cygwin?

    Any comment/idea that you can provide will be welcome

    Best regards

    Eduardo

    #2962
    Markus Mohrhard
    Participant

    Hello Eduardo,

    most likely the easiest option is to build openmpi yourself. Openmpi has a build flag to build the c++ interfaces despite them being marked as deprecated.

    Use the –enable-mpi-cxx while building openmpi to build the mpi interface.

    I think there is currently no better solution if the cygwin project does not provide the c++ pieces of the openmpi build.

    Regards,
    Markus

    #2963
    ERodriguez
    Member

    Hello Markus,

    Thanks for the quick answer. I read a similar answer in some other web. However, (and I am aware that this is just plain ignorance) I can’t make it work.
    At the moment, I am including the flag ‘–enable-mpi-cxx’ in the line

    Code:
    MPIFLAGS := –enable-mpi-cxx

    of the config.mk file

    However, this does not have any effect (same error same place). I am 99% sure that I am doing something wrong, but I am not sure what exactly. Where should I include that flag to have effect in the openmpi build? Should I do it apart from the makefile? Or should I modify some other line to include this flag?

    Sorry for the newbie questions

    Regards
    Eduardo

    #2964
    Markus Mohrhard
    Participant

    Hello Eduardo,

    you need to download and build openmpi with these flags. This is not an OpenLB flag.

    Go to https://www.open-mpi.org/ and download a recent version and build it with this flag ( a normal make && make install should work).

    Kind regards,
    Markus

    #2967
    ERodriguez
    Member

    Hi Markus,

    I have tried that and failed miserably once and again. But I guess that all my problems are related with cygwin and open mpi and my ignorance of both, not so much with OLB.

    However you may be able to help…

    I download a version of mpi, and run

    Code:
    ./configure –enable-mpi-cxx

    in cygwin. (In fact, first I had to install perl in cygwin which was required for mpi, this is not hard, but I just write it here for completeness in case someone else hits the same wall)

    After the configure (which seems to work properly) I try

    Code:
    make all install

    as you suggested, and I obtain the following:

    Quote:
    $ make all install
    Making all in config
    make[1]: se entra en el directorio ‘/openmpi-3.0.3/config’
    make[1]: No se hace nada para ‘all’.
    make[1]: se sale del directorio ‘/openmpi-3.0.3/config’
    Making all in contrib
    make[1]: se entra en el directorio ‘/openmpi-3.0.3/contrib’
    make[1]: No se hace nada para ‘all’.
    make[1]: se sale del directorio ‘/openmpi-3.0.3/contrib’
    Making all in opal
    make[1]: se entra en el directorio ‘/openmpi-3.0.3/opal’
    Making all in include
    make[2]: se entra en el directorio ‘/openmpi-3.0.3/opal/include’
    make all-am
    make[3]: se entra en el directorio ‘/openmpi-3.0.3/opal/include’
    make[3]: se sale del directorio ‘/openmpi-3.0.3/opal/include’
    make[2]: se sale del directorio ‘/openmpi-3.0.3/opal/include’
    Making all in asm
    make[2]: se entra en el directorio ‘/openmpi-3.0.3/opal/asm’
    make[2]: No se hace nada para ‘all’.
    make[2]: se sale del directorio ‘/openmpi-3.0.3/opal/asm’
    Making all in datatype
    make[2]: se entra en el directorio ‘/openmpi-3.0.3/opal/datatype’
    make[2]: No se hace nada para ‘all’.
    make[2]: se sale del directorio ‘/openmpi-3.0.3/opal/datatype’
    Making all in etc
    make[2]: se entra en el directorio ‘/openmpi-3.0.3/opal/etc’
    make[2]: No se hace nada para ‘all’.
    make[2]: se sale del directorio ‘/openmpi-3.0.3/opal/etc’
    Making all in util
    make[2]: se entra en el directorio ‘/openmpi-3.0.3/opal/util’
    Making all in keyval
    make[3]: se entra en el directorio ‘/openmpi-3.0.3/opal/util/keyval’
    make[3]: No se hace nada para ‘all’.
    make[3]: se sale del directorio ‘/openmpi-3.0.3/opal/util/keyval’
    make[3]: se entra en el directorio ‘/openmpi-3.0.3/opal/util’
    CC proc.lo
    In file included from /usr/include/w32api/winsock2.h:56:0,
    from ../../opal/mca/event/libevent2022/libevent/event.h:63,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/psdk_inc/_fd_types.h:100:2: aviso: #warning “fd_set and associated macros have been defined in sys/types. This can cause runtime problems with W32 sockets” [-Wcpp]
    #warning “fd_set and associated macros have been defined in sys/types. \
    ^~~~~~~
    In file included from /usr/include/w32api/winsock2.h:57:0,
    from ../../opal/mca/event/libevent2022/libevent/event.h:63,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/psdk_inc/_ip_types.h:25:8: error: redefinición de ‘struct hostent’
    struct hostent {
    ^~~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:79:8: nota: se definió originalmente aquí
    struct hostent {
    ^~~~~~~
    In file included from /usr/include/w32api/winsock2.h:57:0,
    from ../../opal/mca/event/libevent2022/libevent/event.h:63,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/psdk_inc/_ip_types.h:33:8: error: redefinición de ‘struct netent’
    struct netent {
    ^~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:93:8: nota: se definió originalmente aquí
    struct netent {
    ^~~~~~
    In file included from /usr/include/w32api/winsock2.h:57:0,
    from ../../opal/mca/event/libevent2022/libevent/event.h:63,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/psdk_inc/_ip_types.h:40:8: error: redefinición de ‘struct servent’
    struct servent {
    ^~~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:45:10: nota: se definió originalmente aquí
    struct servent *getservbyname (const char *__name, const char *__proto);
    ^~~~~~~
    In file included from /usr/include/w32api/winsock2.h:57:0,
    from ../../opal/mca/event/libevent2022/libevent/event.h:63,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/psdk_inc/_ip_types.h:52:8: error: redefinición de ‘struct protoent’
    struct protoent {
    ^~~~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:107:8: nota: se definió originalmente aquí
    struct protoent
    ^~~~~~~~
    In file included from /usr/include/w32api/winsock2.h:57:0,
    from ../../opal/mca/event/libevent2022/libevent/event.h:63,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/psdk_inc/_ip_types.h:63:8: error: redefinición de ‘struct linger’
    struct linger {
    ^~~~~~
    In file included from /usr/include/sys/socket.h:13:0,
    from ../../opal/include/opal/types.h:30,
    from proc.h:23,
    from proc.c:19:
    /usr/include/cygwin/socket.h:52:8: nota: se definió originalmente aquí
    struct linger {
    ^~~~~~
    In file included from /usr/include/w32api/winsock2.h:57:0,
    from ../../opal/mca/event/libevent2022/libevent/event.h:63,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/psdk_inc/_ip_types.h:70:8: error: redefinición de ‘struct sockaddr’
    struct sockaddr {
    ^~~~~~~~
    In file included from /usr/include/sys/socket.h:13:0,
    from ../../opal/include/opal/types.h:30,
    from proc.h:23,
    from proc.c:19:
    /usr/include/cygwin/socket.h:27:8: nota: se definió originalmente aquí
    struct sockaddr {
    ^~~~~~~~
    In file included from /usr/include/w32api/winsock2.h:57:0,
    from ../../opal/mca/event/libevent2022/libevent/event.h:63,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/psdk_inc/_ip_types.h:75:8: error: redefinición de ‘struct sockaddr_in’
    struct sockaddr_in {
    ^~~~~~~~~~~
    In file included from /usr/include/netinet/in.h:12:0,
    from ../../opal/include/opal/types.h:36,
    from proc.h:23,
    from proc.c:19:
    /usr/include/cygwin/in.h:196:8: nota: se definió originalmente aquí
    struct sockaddr_in
    ^~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:260:10: error: redefinición de ‘struct sockaddr_storage’
    struct sockaddr_storage {
    ^~~~~~~~~~~~~~~~
    In file included from /usr/include/sys/socket.h:13:0,
    from ../../opal/include/opal/types.h:30,
    from proc.h:23,
    from proc.c:19:
    /usr/include/cygwin/socket.h:39:8: nota: se definió originalmente aquí
    struct sockaddr_storage {
    ^~~~~~~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:973:37: error: tipos en conflicto para ‘accept’
    WINSOCK_API_LINKAGE SOCKET WSAAPI accept(SOCKET s,struct sockaddr *addr,int *addrlen);
    ^~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:21:7: nota: la declaración previa de ‘accept’ estaba aquí
    int accept (int, struct sockaddr *__peer, socklen_t *);
    ^~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:974:34: error: tipos en conflicto para ‘bind’
    WINSOCK_API_LINKAGE int WSAAPI bind(SOCKET s,const struct sockaddr *name,int namelen);
    ^~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:23:7: nota: la declaración previa de ‘bind’ estaba aquí
    int bind (int, const struct sockaddr *__my_addr, socklen_t __addrlen);
    ^~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:976:34: error: tipos en conflicto para ‘connect’
    WINSOCK_API_LINKAGE int WSAAPI connect(SOCKET s,const struct sockaddr *name,int namelen);
    ^~~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:24:7: nota: la declaración previa de ‘connect’ estaba aquí
    int connect (int, const struct sockaddr *, socklen_t);
    ^~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:978:34: error: tipos en conflicto para ‘getpeername’
    WINSOCK_API_LINKAGE int WSAAPI getpeername(SOCKET s,struct sockaddr *name,int *namelen);
    ^~~~~~~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:25:7: nota: la declaración previa de ‘getpeername’ estaba aquí
    int getpeername (int, struct sockaddr *__peer, socklen_t *);
    ^~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:979:34: error: tipos en conflicto para ‘getsockname’
    WINSOCK_API_LINKAGE int WSAAPI getsockname(SOCKET s,struct sockaddr *name,int *namelen);
    ^~~~~~~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:26:7: nota: la declaración previa de ‘getsockname’ estaba aquí
    int getsockname (int, struct sockaddr *__addr, socklen_t *);
    ^~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:980:34: error: tipos en conflicto para ‘getsockopt’
    WINSOCK_API_LINKAGE int WSAAPI getsockopt(SOCKET s,int level,int optname,char *optval,int *optlen);
    ^~~~~~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:38:7: nota: la declaración previa de ‘getsockopt’ estaba aquí
    int getsockopt (int __s, int __level, int __optname, void *__optval,
    ^~~~~~~~~~
    In file included from /usr/include/cygwin/in.h:263:0,
    from /usr/include/netinet/in.h:12,
    from ../../opal/include/opal/types.h:36,
    from proc.h:23,
    from proc.c:19:
    /usr/include/w32api/winsock2.h:982:37: error: expected declaration specifiers or ‘…’ before ‘(’ token
    WINSOCK_API_LINKAGE u_long WSAAPI htonl(u_long hostlong);
    ^
    /usr/include/w32api/winsock2.h:982:37: error: expected ‘)’ before ‘?’ token
    WINSOCK_API_LINKAGE u_long WSAAPI htonl(u_long hostlong);
    ^
    /usr/include/w32api/winsock2.h:983:38: error: expected declaration specifiers or ‘…’ before ‘(’ token
    WINSOCK_API_LINKAGE u_short WSAAPI htons(u_short hostshort);
    ^
    /usr/include/w32api/winsock2.h:983:38: error: expected ‘)’ before ‘?’ token
    WINSOCK_API_LINKAGE u_short WSAAPI htons(u_short hostshort);
    ^
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:987:34: error: tipos en conflicto para ‘listen’
    WINSOCK_API_LINKAGE int WSAAPI listen(SOCKET s,int backlog);
    ^~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:27:7: nota: la declaración previa de ‘listen’ estaba aquí
    int listen (int, int __n);
    ^~~~~~
    In file included from /usr/include/cygwin/in.h:263:0,
    from /usr/include/netinet/in.h:12,
    from ../../opal/include/opal/types.h:36,
    from proc.h:23,
    from proc.c:19:
    /usr/include/w32api/winsock2.h:989:37: error: expected declaration specifiers or ‘…’ before ‘(’ token
    WINSOCK_API_LINKAGE u_long WSAAPI ntohl(u_long netlong);
    ^
    /usr/include/w32api/winsock2.h:989:37: error: expected ‘)’ before ‘?’ token
    WINSOCK_API_LINKAGE u_long WSAAPI ntohl(u_long netlong);
    ^
    /usr/include/w32api/winsock2.h:990:38: error: expected declaration specifiers or ‘…’ before ‘(’ token
    WINSOCK_API_LINKAGE u_short WSAAPI ntohs(u_short netshort);
    ^
    /usr/include/w32api/winsock2.h:990:38: error: expected ‘)’ before ‘?’ token
    WINSOCK_API_LINKAGE u_short WSAAPI ntohs(u_short netshort);
    ^
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:992:34: error: tipos en conflicto para ‘recv’
    WINSOCK_API_LINKAGE int WSAAPI recv(SOCKET s,char *buf,int len,int flags);
    ^~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:28:11: nota: la declaración previa de ‘recv’ estaba aquí
    ssize_t recv (int, void *__buff, size_t __len, int __flags);
    ^~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:993:34: error: tipos en conflicto para ‘recvfrom’
    WINSOCK_API_LINKAGE int WSAAPI recvfrom(SOCKET s,char *buf,int len,int flags,struct sockaddr *from,int *fromlen);
    ^~~~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:29:11: nota: la declaración previa de ‘recvfrom’ estaba aquí
    ssize_t recvfrom (int, void *__buff, size_t __len, int __flags,
    ^~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:995:34: error: tipos en conflicto para ‘select’
    WINSOCK_API_LINKAGE int WSAAPI select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,const PTIMEVAL timeout);
    ^~~~~~
    In file included from /usr/include/sys/types.h:68:0,
    from ../../opal/include/opal_stdint.h:38,
    from ../../opal/include/opal_config_bottom.h:264,
    from ../../opal/include/opal_config.h:2908,
    from proc.h:20,
    from proc.c:19:
    /usr/include/sys/select.h:62:5: nota: la declaración previa de ‘select’ estaba aquí
    int select __P ((int __n, fd_set *__readfds, fd_set *__writefds,
    ^~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:997:34: error: tipos en conflicto para ‘send’
    WINSOCK_API_LINKAGE int WSAAPI send(SOCKET s,const char *buf,int len,int flags);
    ^~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:32:11: nota: la declaración previa de ‘send’ estaba aquí
    ssize_t send (int, const void *__buff, size_t __len, int __flags);
    ^~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:998:34: error: tipos en conflicto para ‘sendto’
    WINSOCK_API_LINKAGE int WSAAPI sendto(SOCKET s,const char *buf,int len,int flags,const struct sockaddr *to,int tolen);
    ^~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:34:11: nota: la declaración previa de ‘sendto’ estaba aquí
    ssize_t sendto (int, const void *, size_t __len, int __flags,
    ^~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:999:34: error: tipos en conflicto para ‘setsockopt’
    WINSOCK_API_LINKAGE int WSAAPI setsockopt(SOCKET s,int level,int optname,const char *optval,int optlen);
    ^~~~~~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:36:7: nota: la declaración previa de ‘setsockopt’ estaba aquí
    int setsockopt (int __s, int __level, int __optname, const void *optval,
    ^~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:1000:34: error: tipos en conflicto para ‘shutdown’
    WINSOCK_API_LINKAGE int WSAAPI shutdown(SOCKET s,int how);
    ^~~~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:40:7: nota: la declaración previa de ‘shutdown’ estaba aquí
    int shutdown (int, int);
    ^~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:1001:37: error: tipos en conflicto para ‘socket’
    WINSOCK_API_LINKAGE SOCKET WSAAPI socket(int af,int type,int protocol);
    ^~~~~~
    In file included from ../../opal/include/opal/types.h:30:0,
    from proc.h:23,
    from proc.c:19:
    /usr/include/sys/socket.h:41:7: nota: la declaración previa de ‘socket’ estaba aquí
    int socket (int __family, int __type, int __protocol);
    ^~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:1002:46: error: tipos en conflicto para ‘gethostbyaddr’
    WINSOCK_API_LINKAGE struct hostent *WSAAPI gethostbyaddr(const char *addr,int len,int type);
    ^~~~~~~~~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:231:17: nota: la declaración previa de ‘gethostbyaddr’ estaba aquí
    struct hostent *gethostbyaddr (const void *, socklen_t, int);
    ^~~~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:1003:46: error: tipos en conflicto para ‘gethostbyname’
    WINSOCK_API_LINKAGE struct hostent *WSAAPI gethostbyname(const char *name);
    ^~~~~~~~~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:232:17: nota: la declaración previa de ‘gethostbyname’ estaba aquí
    struct hostent *gethostbyname (const char *);
    ^~~~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:1005:46: error: tipos en conflicto para ‘getservbyport’
    WINSOCK_API_LINKAGE struct servent *WSAAPI getservbyport(int port,const char *proto);
    ^~~~~~~~~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:244:17: nota: la declaración previa de ‘getservbyport’ estaba aquí
    struct servent *getservbyport (int, const char *);
    ^~~~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:1006:46: error: tipos en conflicto para ‘getservbyname’
    WINSOCK_API_LINKAGE struct servent *WSAAPI getservbyname(const char *name,const char *proto);
    ^~~~~~~~~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:243:17: nota: la declaración previa de ‘getservbyname’ estaba aquí
    struct servent *getservbyname (const char *, const char *);
    ^~~~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:1007:47: error: tipos en conflicto para ‘getprotobynumber’
    WINSOCK_API_LINKAGE struct protoent *WSAAPI getprotobynumber(int number);
    ^~~~~~~~~~~~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:241:18: nota: la declaración previa de ‘getprotobynumber’ estaba aquí
    struct protoent *getprotobynumber (int);
    ^~~~~~~~~~~~~~~~
    In file included from ../../opal/mca/event/libevent2022/libevent/event.h:63:0,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/w32api/winsock2.h:1008:47: error: tipos en conflicto para ‘getprotobyname’
    WINSOCK_API_LINKAGE struct protoent *WSAAPI getprotobyname(const char *name);
    ^~~~~~~~~~~~~~
    In file included from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/include/event2/util.h:67:0,
    from /cygdrive/c/cygwin64/openmpi-3.0.3/opal/mca/event/libevent2022/libevent/evutil.h:37,
    from ../../opal/mca/event/libevent2022/libevent/event.h:57,
    from ../../opal/mca/event/libevent2022/libevent2022.h:58,
    from ../../opal/mca/event/event.h:76,
    from ../../opal/mca/pmix/pmix.h:24,
    from proc.c:22:
    /usr/include/netdb.h:240:18: nota: la declaración previa de ‘getprotobyname’ estaba aquí
    struct protoent *getprotobyname (const char *);
    ^~~~~~~~~~~~~~
    make[3]: *** [Makefile:1952: proc.lo] Error 1
    make[3]: se sale del directorio ‘/openmpi-3.0.3/opal/util’
    make[2]: *** [Makefile:2017: all-recursive] Error 1
    make[2]: se sale del directorio ‘/openmpi-3.0.3/opal/util’
    make[1]: *** [Makefile:2354: all-recursive] Error 1
    make[1]: se sale del directorio ‘/openmpi-3.0.3/opal’
    make: *** [Makefile:1875: all-recursive] Error 1

    As you can see, almost all the error/problems are related with the folder opal inside openmpi directory and the files therein

    Any idea?

    SOrry for the slight off-topic-ness of this question 🙂

    Regards

    Eduardo

Viewing 5 posts - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.