Error socket does not name a type

Description I have a compilation error when I compile open62541-master with C++ compilator 👍 [ 33%] Building CXX object CMakeFiles/openLoki.dir/fabrique.cpp.o /usr/bin/c++ -I/home/idevice/OpenLoki/...

Hey, Guys, I have a similar problem with compiling my code that uses the single-file library, and I have added also the same thing that you suggested but not working and the same error happened,

Could you please let me know is related to what?
do I need include ua_config.h? and if yes where is it?
If you know about this problem I will be appriciate if you can help me,

Regards

//error !!!!!

In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:21349:5: error: unknown type name ‘UA_SOCKET’
     UA_SOCKET sockfd;                 /* Most connectivity solutions run on
     ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25632:1: error: unknown type name ‘ssize_t’; did you mean ‘size_t’?
 ssize_t UA_send(UA_SOCKET sockfd, const void *buf, size_t len, int flags); //equivalent to posix send implementation
 ^~~~~~~
 size_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25632:17: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 ssize_t UA_send(UA_SOCKET sockfd, const void *buf, size_t len, int flags); //equivalent to posix send implementation
                 ^~~~~~~~~
                 UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25636:1: error: unknown type name ‘ssize_t’; did you mean ‘size_t’?
 ssize_t sendto(UA_SOCKET sockfd, const void *buf, size_t len, int flags, const struct sockaddr *dest_addr, socklen_t addrlen); //equivalent to posix sendto implementation
 ^~~~~~~
 size_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25636:16: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 ssize_t sendto(UA_SOCKET sockfd, const void *buf, size_t len, int flags, const struct sockaddr *dest_addr, socklen_t addrlen); //equivalent to posix sendto implementation
                ^~~~~~~~~
                UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25636:108: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
 ssize_t sendto(UA_SOCKET sockfd, const void *buf, size_t len, int flags, const struct sockaddr *dest_addr, socklen_t addrlen); //equivalent to posix sendto implementation
                                                                                                            ^~~~~~~~~
                                                                                                            __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25640:15: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 int UA_select(UA_SOCKET nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); //equivalent to posix select implementation
               ^~~~~~~~~
               UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25640:31: error: unknown type name ‘fd_set’; did you mean ‘false’?
 int UA_select(UA_SOCKET nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); //equivalent to posix select implementation
                               ^~~~~~
                               false
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25640:48: error: unknown type name ‘fd_set’; did you mean ‘false’?
 int UA_select(UA_SOCKET nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); //equivalent to posix select implementation
                                                ^~~~~~
                                                false
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25640:66: error: unknown type name ‘fd_set’; did you mean ‘false’?
 int UA_select(UA_SOCKET nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); //equivalent to posix select implementation
                                                                  ^~~~~~
                                                                  false
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25644:1: error: unknown type name ‘ssize_t’; did you mean ‘size_t’?
 ssize_t UA_recv(UA_SOCKET sockfd, void *buf, size_t len, int flags); //equivalent to posix recv implementation
 ^~~~~~~
 size_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25644:17: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 ssize_t UA_recv(UA_SOCKET sockfd, void *buf, size_t len, int flags); //equivalent to posix recv implementation
                 ^~~~~~~~~
                 UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25648:1: error: unknown type name ‘ssize_t’; did you mean ‘size_t’?
 ssize_t recvfrom(UA_SOCKET sockfd, void *buf, size_t len, int flags, struct sockaddr *src_addr, socklen_t *addrlen);
 ^~~~~~~
 size_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25648:18: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 ssize_t recvfrom(UA_SOCKET sockfd, void *buf, size_t len, int flags, struct sockaddr *src_addr, socklen_t *addrlen);
                  ^~~~~~~~~
                  UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25648:97: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
 ssize_t recvfrom(UA_SOCKET sockfd, void *buf, size_t len, int flags, struct sockaddr *src_addr, socklen_t *addrlen);
                                                                                                 ^~~~~~~~~
                                                                                                 __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25652:17: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 int UA_shutdown(UA_SOCKET sockfd, int how); //equivalent to posix shutdown implementation
                 ^~~~~~~~~
                 UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25656:1: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 UA_SOCKET UA_socket(int domain, int type, int protocol);//equivalent to posix socket implementation
 ^~~~~~~~~
 UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25660:13: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 int UA_bind(UA_SOCKET sockfd, const struct sockaddr *addr, socklen_t addrlen);//equivalent to posix bind implementation
             ^~~~~~~~~
             UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25660:60: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
 int UA_bind(UA_SOCKET sockfd, const struct sockaddr *addr, socklen_t addrlen);//equivalent to posix bind implementation
                                                            ^~~~~~~~~
                                                            __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25664:15: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 int UA_listen(UA_SOCKET sockfd, int backlog);//equivalent to posix listen implementation
               ^~~~~~~~~
               UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25668:15: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 int UA_accept(UA_SOCKET sockfd, struct sockaddr *addr, socklen_t *addrlen);//equivalent to posix accept implementation
               ^~~~~~~~~
               UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25668:56: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
 int UA_accept(UA_SOCKET sockfd, struct sockaddr *addr, socklen_t *addrlen);//equivalent to posix accept implementation
                                                        ^~~~~~~~~
                                                        __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25672:14: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 int UA_close(UA_SOCKET sockfd);//equivalent to posix close implementation
              ^~~~~~~~~
              UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25676:16: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 int UA_connect(UA_SOCKET sockfd, const struct sockaddr *addr, socklen_t addrlen);//equivalent to posix connect implementation
                ^~~~~~~~~
                UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25676:63: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
 int UA_connect(UA_SOCKET sockfd, const struct sockaddr *addr, socklen_t addrlen);//equivalent to posix connect implementation
                                                               ^~~~~~~~~
                                                               __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25680:16: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 void UA_fd_set(UA_SOCKET fd, fd_set *set); //equivalent to posix FD_SET implementation
                ^~~~~~~~~
                UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25680:30: error: unknown type name ‘fd_set’; did you mean ‘false’?
 void UA_fd_set(UA_SOCKET fd, fd_set *set); //equivalent to posix FD_SET implementation
                              ^~~~~~
                              false
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25684:17: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 int UA_fd_isset(UA_SOCKET fd, fd_set *set);//equivalent to posix FD_ISSET implementation
                 ^~~~~~~~~
                 UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25684:31: error: unknown type name ‘fd_set’; did you mean ‘false’?
 int UA_fd_isset(UA_SOCKET fd, fd_set *set);//equivalent to posix FD_ISSET implementation
                               ^~~~~~
                               false
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25688:72: warning: ‘struct addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
 int UA_getaddrinfo(const char *node, const char *service, const struct addrinfo *hints, struct addrinfo **res);//equivalent to posix getaddrinfo implementation
                                                                        ^~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25710:37: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 unsigned int UA_socket_set_blocking(UA_SOCKET sockfd);//set a socket as blocking. Returns 0 if OK, other value otherwise
                                     ^~~~~~~~~
                                     UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25714:40: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
 unsigned int UA_socket_set_nonblocking(UA_SOCKET sockfd);//set a socket as non-blocking. Returns 0 if OK, other value otherwise
                                        ^~~~~~~~~
                                        UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25718:69: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
 int UA_getsockopt(int sockfd, int level, int optname, void *optval, socklen_t *optlen); //equivalent to posix getsockopt implementation. Only in non windows architectures
                                                                     ^~~~~~~~~
                                                                     __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25722:75: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
 int UA_setsockopt(int sockfd, int level, int optname, const void *optval, socklen_t optlen);//equivalent to posix setsockopt implementation
                                                                           ^~~~~~~~~
                                                                           __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25726:29: warning: ‘struct addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
 void UA_freeaddrinfo(struct addrinfo *res);//equivalent to posix freeaddrinfo implementatio
                             ^~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘connection_write’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47893:17: warning: implicit declaration of function ‘UA_send’; did you mean ‘UA_new’? [-Wimplicit-function-declaration]
             n = UA_send(connection->sockfd,
                 ^~~~~~~
                 UA_new
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47896:25: error: ‘UA_ERRNO’ undeclared (first use in this function); did you mean ‘UA_STRING’?
             if(n < 0 && UA_ERRNO != UA_INTERRUPTED && UA_ERRNO != UA_AGAIN) {
                         ^~~~~~~~
                         UA_STRING
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47896:25: note: each undeclared identifier is reported only once for each function it appears in
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47896:37: error: ‘UA_INTERRUPTED’ undeclared (first use in this function); did you mean ‘UA_UINT32RANGE’?
             if(n < 0 && UA_ERRNO != UA_INTERRUPTED && UA_ERRNO != UA_AGAIN) {
                                     ^~~~~~~~~~~~~~
                                     UA_UINT32RANGE
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47896:67: error: ‘UA_AGAIN’ undeclared (first use in this function); did you mean ‘UA_MIN’?
             if(n < 0 && UA_ERRNO != UA_INTERRUPTED && UA_ERRNO != UA_AGAIN) {
                                                                   ^~~~~~~~
                                                                   UA_MIN
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘connection_recv’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47920:9: warning: implicit declaration of function ‘UA_fd_set’; did you mean ‘UA_socket’? [-Wimplicit-function-declaration]
         UA_fd_set(connection->sockfd, &fdset);
         ^~~~~~~~~
         UA_socket
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47924:26: warning: implicit declaration of function ‘UA_select’; did you mean ‘pselect’? [-Wimplicit-function-declaration]
         int resultsize = UA_select(connection->sockfd+1, &fdset, NULL,
                          ^~~~~~~~~
                          pselect
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47934:16: error: ‘errno’ undeclared (first use in this function)
             if(errno == EINTR)
                ^~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47934:25: error: ‘EINTR’ undeclared (first use in this function)
             if(errno == EINTR)
                         ^~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47951:19: warning: implicit declaration of function ‘UA_recv’; did you mean ‘UA_free’? [-Wimplicit-function-declaration]
     ssize_t ret = UA_recv(connection->sockfd, (char*)response->data,
                   ^~~~~~~
                   UA_free
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47964:12: error: ‘UA_ERRNO’ undeclared (first use in this function); did you mean ‘UA_STRING’?
         if(UA_ERRNO == UA_INTERRUPTED || (timeout > 0) ?
            ^~~~~~~~
            UA_STRING
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47964:24: error: ‘UA_INTERRUPTED’ undeclared (first use in this function); did you mean ‘UA_UINT32RANGE’?
         if(UA_ERRNO == UA_INTERRUPTED || (timeout > 0) ?
                        ^~~~~~~~~~~~~~
                        UA_UINT32RANGE
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47965:33: error: ‘UA_EAGAIN’ undeclared (first use in this function); did you mean ‘UA_MIN’?
            false : (UA_ERRNO == UA_EAGAIN || UA_ERRNO == UA_WOULDBLOCK))
                                 ^~~~~~~~~
                                 UA_MIN
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47965:58: error: ‘UA_WOULDBLOCK’ undeclared (first use in this function)
            false : (UA_ERRNO == UA_EAGAIN || UA_ERRNO == UA_WOULDBLOCK))
                                                          ^~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: At top level:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:47994:5: error: unknown type name ‘UA_SOCKET’
     UA_SOCKET serverSockets[FD_SETSIZE];
     ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘ServerNetworkLayerTCP_close’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48011:5: warning: implicit declaration of function ‘UA_shutdown’; did you mean ‘UA_htonl’? [-Wimplicit-function-declaration]
     UA_shutdown((UA_SOCKET)connection->sockfd, 2);
     ^~~~~~~~~~~
     UA_htonl
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48011:18: error: ‘UA_SOCKET’ undeclared (first use in this function); did you mean ‘UA_FORMAT’?
     UA_shutdown((UA_SOCKET)connection->sockfd, 2);
                  ^~~~~~~~~
                  UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48011:28: error: expected ‘)’ before ‘connection’
     UA_shutdown((UA_SOCKET)connection->sockfd, 2);
                            ^~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: At top level:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48017:34: warning: ‘struct sockaddr_storage’ declared inside parameter list will not be visible outside of this definition or declaration
                           struct sockaddr_storage *remote) {
                                  ^~~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘ServerNetworkLayerTCP_add’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48019:5: warning: implicit declaration of function ‘UA_socket_set_nonblocking’ [-Wimplicit-function-declaration]
     UA_socket_set_nonblocking(newsockfd);//TODO: check return value
     ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48023:8: warning: implicit declaration of function ‘UA_setsockopt’; did you mean ‘UA_socket’? [-Wimplicit-function-declaration]
     if(UA_setsockopt(newsockfd, IPPROTO_TCP, TCP_NODELAY,
        ^~~~~~~~~~~~~
        UA_socket
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48023:33: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
     if(UA_setsockopt(newsockfd, IPPROTO_TCP, TCP_NODELAY,
                                 ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48023:46: error: ‘TCP_NODELAY’ undeclared (first use in this function)
     if(UA_setsockopt(newsockfd, IPPROTO_TCP, TCP_NODELAY,
                                              ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48025:9: warning: implicit declaration of function ‘UA_LOG_SOCKET_ERRNO_WRAP’; did you mean ‘UA_LOG_NODEID_WRAP’? [-Wimplicit-function-declaration]
         UA_LOG_SOCKET_ERRNO_WRAP(
         ^~~~~~~~~~~~~~~~~~~~~~~~
         UA_LOG_NODEID_WRAP
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48028:30: error: ‘errno_str’ undeclared (first use in this function)
                              errno_str));
                              ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48057:9: warning: implicit declaration of function ‘UA_close’; did you mean ‘pclose’? [-Wimplicit-function-declaration]
         UA_close(newsockfd);
         ^~~~~~~~
         pclose
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: At top level:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48082:54: warning: ‘struct addrinfo’ declared inside parameter list will not be visible outside of this definition or declaration
 addServerSocket(ServerNetworkLayerTCP *layer, struct addrinfo *ai) {
                                                      ^~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘addServerSocket’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48084:5: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
     UA_SOCKET newsock = UA_socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);
     ^~~~~~~~~
     UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48084:37: error: dereferencing pointer to incomplete type ‘struct addrinfo’
     UA_SOCKET newsock = UA_socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);
                                     ^~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48085:19: error: ‘UA_INVALID_SOCKET’ undeclared (first use in this function); did you mean ‘UA_NS0ID_NODE’?
     if(newsock == UA_INVALID_SOCKET)
                   ^~~~~~~~~~~~~~~~~
                   UA_NS0ID_NODE
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48107:31: error: ‘SOL_SOCKET’ undeclared (first use in this function)
     if(UA_setsockopt(newsock, SOL_SOCKET, SO_REUSEADDR,
                               ^~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48107:43: error: ‘SO_REUSEADDR’ undeclared (first use in this function)
     if(UA_setsockopt(newsock, SOL_SOCKET, SO_REUSEADDR,
                                           ^~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48124:8: warning: implicit declaration of function ‘UA_bind’; did you mean ‘UA_init’? [-Wimplicit-function-declaration]
     if(UA_bind(newsock, ai->ai_addr, (socklen_t)ai->ai_addrlen) < 0) {
        ^~~~~~~
        UA_init
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48124:39: error: ‘socklen_t’ undeclared (first use in this function); did you mean ‘__socklen_t’?
     if(UA_bind(newsock, ai->ai_addr, (socklen_t)ai->ai_addrlen) < 0) {
                                       ^~~~~~~~~
                                       __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48124:49: error: expected ‘)’ before ‘ai’
     if(UA_bind(newsock, ai->ai_addr, (socklen_t)ai->ai_addrlen) < 0) {
                                                 ^~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48127:65: error: ‘errno_str’ undeclared (first use in this function)
                            "Error binding a server socket: %s", errno_str));
                                                                 ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48133:8: warning: implicit declaration of function ‘UA_listen’ [-Wimplicit-function-declaration]
     if(UA_listen(newsock, MAXBACKLOG) < 0) {
        ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘ServerNetworkLayerTCP_start’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48175:21: error: storage size of ‘hints’ isn’t known
     struct addrinfo hints, *res;
                     ^~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48177:23: error: ‘AF_UNSPEC’ undeclared (first use in this function)
     hints.ai_family = AF_UNSPEC;
                       ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48178:25: error: ‘SOCK_STREAM’ undeclared (first use in this function)
     hints.ai_socktype = SOCK_STREAM;
                         ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48179:22: error: ‘AI_PASSIVE’ undeclared (first use in this function)
     hints.ai_flags = AI_PASSIVE;
                      ^~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48180:25: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
     hints.ai_protocol = IPPROTO_TCP;
                         ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48181:45: warning: passing argument 4 of ‘UA_getaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
     if(UA_getaddrinfo(NULL, portno, &hints, &res) != 0)
                                             ^
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25688:5: note: expected ‘struct addrinfo **’ but argument is of type ‘struct addrinfo **’
 int UA_getaddrinfo(const char *node, const char *service, const struct addrinfo *hints, struct addrinfo **res);//equivalent to posix getaddrinfo implementation
     ^~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48189:16: error: dereferencing pointer to incomplete type ‘struct addrinfo’
         ai = ai->ai_next)
                ^~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48190:32: warning: passing argument 2 of ‘addServerSocket’ from incompatible pointer type [-Wincompatible-pointer-types]
         addServerSocket(layer, ai);
                                ^~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48082:1: note: expected ‘struct addrinfo *’ but argument is of type ‘struct addrinfo *’
 addServerSocket(ServerNetworkLayerTCP *layer, struct addrinfo *ai) {
 ^~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48191:21: warning: passing argument 1 of ‘UA_freeaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
     UA_freeaddrinfo(res);
                     ^~~
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25726:6: note: expected ‘struct addrinfo *’ but argument is of type ‘struct addrinfo *’
 void UA_freeaddrinfo(struct addrinfo *res);//equivalent to posix freeaddrinfo implementatio
      ^~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘ServerNetworkLayerTCP_listen’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48237:67: error: ‘errno_str’ undeclared (first use in this function)
                                   "Socket select failed with %s", errno_str));
                                                                   ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48244:13: warning: implicit declaration of function ‘UA_fd_isset’; did you mean ‘UA_assert’? [-Wimplicit-function-declaration]
         if(!UA_fd_isset(layer->serverSockets[i], &fdset))
             ^~~~~~~~~~~
             UA_assert
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48247:33: error: storage size of ‘remote’ isn’t known
         struct sockaddr_storage remote;
                                 ^~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48248:9: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
         socklen_t remote_size = sizeof(remote);
         ^~~~~~~~~
         __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48249:9: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
         UA_SOCKET newsockfd = UA_accept((UA_SOCKET)layer->serverSockets[i],
         ^~~~~~~~~
         UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48249:31: warning: implicit declaration of function ‘UA_accept’; did you mean ‘UA_access’? [-Wimplicit-function-declaration]
         UA_SOCKET newsockfd = UA_accept((UA_SOCKET)layer->serverSockets[i],
                               ^~~~~~~~~
                               UA_access
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48249:42: error: ‘UA_SOCKET’ undeclared (first use in this function); did you mean ‘UA_FORMAT’?
         UA_SOCKET newsockfd = UA_accept((UA_SOCKET)layer->serverSockets[i],
                                          ^~~~~~~~~
                                          UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48249:52: error: expected ‘)’ before ‘layer’
         UA_SOCKET newsockfd = UA_accept((UA_SOCKET)layer->serverSockets[i],
                                                    ^~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48251:25: error: ‘UA_INVALID_SOCKET’ undeclared (first use in this function); did you mean ‘UA_SOCKET’?
         if(newsockfd == UA_INVALID_SOCKET)
                         ^~~~~~~~~~~~~~~~~
                         UA_SOCKET
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: At top level:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48370:18: error: field ‘hints’ has incomplete type
  struct addrinfo hints, *server;
                  ^~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘ClientNetworkLayerTCP_free’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48394:27: warning: passing argument 1 of ‘UA_freeaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
           UA_freeaddrinfo(tcpConnection->server);
                           ^~~~~~~~~~~~~
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25726:6: note: expected ‘struct addrinfo *’ but argument is of type ‘struct addrinfo *’
 void UA_freeaddrinfo(struct addrinfo *res);//equivalent to posix freeaddrinfo implementatio
      ^~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘UA_ClientConnectionTCP_poll’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48409:5: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
     UA_SOCKET clientsockfd;
     ^~~~~~~~~
     UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48429:51: error: dereferencing pointer to incomplete type ‘struct addrinfo’
     clientsockfd = UA_socket(tcpConnection->server->ai_family,
                                                   ^~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48434:24: error: ‘UA_INVALID_SOCKET’ undeclared (first use in this function); did you mean ‘UA_NS0ID_NODE’?
     if(clientsockfd == UA_INVALID_SOCKET) {
                        ^~~~~~~~~~~~~~~~~
                        UA_NS0ID_NODE
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48436:76: error: ‘UA_ERRNO’ undeclared (first use in this function); did you mean ‘UA_STRING’?
                             "Could not create client socket: %s", strerror(UA_ERRNO));
                                                                            ^~~~~~~~
                                                                            UA_STRING
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48450:17: warning: implicit declaration of function ‘UA_connect’; did you mean ‘UA_socket’? [-Wimplicit-function-declaration]
     int error = UA_connect(clientsockfd, tcpConnection->server->ai_addr,
                 ^~~~~~~~~~
                 UA_socket
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48453:39: error: ‘UA_ERR_CONNECTION_PROGRESS’ undeclared (first use in this function); did you mean ‘UA_CONNECTION_CLOSED’?
     if ((error == -1) && (UA_ERRNO != UA_ERR_CONNECTION_PROGRESS)) {
                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                       UA_CONNECTION_CLOSED
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48510:13: error: unknown type name ‘OPTVAL_TYPE’
             OPTVAL_TYPE so_error;
             ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48511:13: error: unknown type name ‘socklen_t’; did you mean ‘__socklen_t’?
             socklen_t len = sizeof so_error;
             ^~~~~~~~~
             __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48513:23: warning: implicit declaration of function ‘UA_getsockopt’; did you mean ‘UA_socket’? [-Wimplicit-function-declaration]
             int ret = UA_getsockopt(clientsockfd, SOL_SOCKET, SO_ERROR, &so_error,
                       ^~~~~~~~~~~~~
                       UA_socket
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48513:51: error: ‘SOL_SOCKET’ undeclared (first use in this function)
             int ret = UA_getsockopt(clientsockfd, SOL_SOCKET, SO_ERROR, &so_error,
                                                   ^~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48513:63: error: ‘SO_ERROR’ undeclared (first use in this function); did you mean ‘UA_ERRNO’?
             int ret = UA_getsockopt(clientsockfd, SOL_SOCKET, SO_ERROR, &so_error,
                                                               ^~~~~~~~
                                                               UA_ERRNO
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48519:33: error: ‘ECONNREFUSED’ undeclared (first use in this function); did you mean ‘WCONTINUED’?
                 if (so_error != ECONNREFUSED) {
                                 ^~~~~~~~~~~~
                                 WCONTINUED
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘UA_ClientConnectionTCP_init’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48599:44: error: ‘AF_UNSPEC’ undeclared (first use in this function)
     tcpClientConnection->hints.ai_family = AF_UNSPEC;
                                            ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48600:46: error: ‘SOCK_STREAM’ undeclared (first use in this function)
     tcpClientConnection->hints.ai_socktype = SOCK_STREAM;
                                              ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48604:21: warning: passing argument 4 of ‘UA_getaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
                     &tcpClientConnection->server);
                     ^
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25688:5: note: expected ‘struct addrinfo **’ but argument is of type ‘struct addrinfo **’
 int UA_getaddrinfo(const char *node, const char *service, const struct addrinfo *hints, struct addrinfo **res);//equivalent to posix getaddrinfo implementation
     ^~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48606:7: warning: implicit declaration of function ‘UA_LOG_SOCKET_ERRNO_GAI_WRAP’; did you mean ‘UA_LOG_NODEID_WRAP’? [-Wimplicit-function-declaration]
       UA_LOG_SOCKET_ERRNO_GAI_WRAP(UA_LOG_WARNING(logger, UA_LOGCATEGORY_NETWORK,
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
       UA_LOG_NODEID_WRAP
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48607:101: error: ‘errno_str’ undeclared (first use in this function); did you mean ‘error’?
                                                  "DNS lookup of %s failed with error %s", hostname, errno_str));
                                                                                                     ^~~~~~~~~
                                                                                                     error
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c: In function ‘UA_ClientConnectionTCP’:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48661:21: error: storage size of ‘hints’ isn’t known
     struct addrinfo hints, *server;
                     ^~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48663:23: error: ‘AF_UNSPEC’ undeclared (first use in this function)
     hints.ai_family = AF_UNSPEC;
                       ^~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48664:25: error: ‘SOCK_STREAM’ undeclared (first use in this function)
     hints.ai_socktype = SOCK_STREAM;
                         ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48665:25: error: ‘IPPROTO_TCP’ undeclared (first use in this function)
     hints.ai_protocol = IPPROTO_TCP;
                         ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48668:59: warning: passing argument 4 of ‘UA_getaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
     int error = UA_getaddrinfo(hostname, portStr, &hints, &server);
                                                           ^
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25688:5: note: expected ‘struct addrinfo **’ but argument is of type ‘struct addrinfo **’
 int UA_getaddrinfo(const char *node, const char *service, const struct addrinfo *hints, struct addrinfo **res);//equivalent to posix getaddrinfo implementation
     ^~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48671:98: error: ‘errno_str’ undeclared (first use in this function); did you mean ‘error’?
                                               "DNS lookup of %s failed with error %s", hostname, errno_str));
                                                                                                  ^~~~~~~~~
                                                                                                  error
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48678:5: error: unknown type name ‘UA_SOCKET’; did you mean ‘UA_FORMAT’?
     UA_SOCKET clientsockfd;
     ^~~~~~~~~
     UA_FORMAT
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48688:28: error: ‘UA_INVALID_SOCKET’ undeclared (first use in this function); did you mean ‘UA_NS0ID_NODE’?
         if(clientsockfd == UA_INVALID_SOCKET) {
                            ^~~~~~~~~~~~~~~~~
                            UA_NS0ID_NODE
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48691:29: warning: passing argument 1 of ‘UA_freeaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
             UA_freeaddrinfo(server);
                             ^~~~~~
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25726:6: note: expected ‘struct addrinfo *’ but argument is of type ‘struct addrinfo *’
 void UA_freeaddrinfo(struct addrinfo *res);//equivalent to posix freeaddrinfo implementatio
      ^~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48705:29: warning: passing argument 1 of ‘UA_freeaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
             UA_freeaddrinfo(server);
                             ^~~~~~
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25726:6: note: expected ‘struct addrinfo *’ but argument is of type ‘struct addrinfo *’
 void UA_freeaddrinfo(struct addrinfo *res);//equivalent to posix freeaddrinfo implementatio
      ^~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48710:60: error: ‘socklen_t’ undeclared (first use in this function); did you mean ‘__socklen_t’?
         error = UA_connect(clientsockfd, server->ai_addr, (socklen_t)server->ai_addrlen);
                                                            ^~~~~~~~~
                                                            __socklen_t
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48710:70: error: expected ‘)’ before ‘server’
         error = UA_connect(clientsockfd, server->ai_addr, (socklen_t)server->ai_addrlen);
                                                                      ^~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48712:31: error: ‘UA_ERRNO’ undeclared (first use in this function); did you mean ‘UA_STRING’?
         if ((error == -1) && (UA_ERRNO != UA_ERR_CONNECTION_PROGRESS)) {
                               ^~~~~~~~
                               UA_STRING
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48712:43: error: ‘UA_ERR_CONNECTION_PROGRESS’ undeclared (first use in this function); did you mean ‘UA_CONNECTION_CLOSED’?
         if ((error == -1) && (UA_ERRNO != UA_ERR_CONNECTION_PROGRESS)) {
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                           UA_CONNECTION_CLOSED
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48718:29: warning: passing argument 1 of ‘UA_freeaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
             UA_freeaddrinfo(server);
                             ^~~~~~
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25726:6: note: expected ‘struct addrinfo *’ but argument is of type ‘struct addrinfo *’
 void UA_freeaddrinfo(struct addrinfo *res);//equivalent to posix freeaddrinfo implementatio
      ^~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48769:17: error: unknown type name ‘OPTVAL_TYPE’
                 OPTVAL_TYPE so_error;
                 ^~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48770:27: error: expected ‘;’ before ‘len’
                 socklen_t len = sizeof so_error;
                           ^~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48772:55: error: ‘SOL_SOCKET’ undeclared (first use in this function)
                 int ret = UA_getsockopt(clientsockfd, SOL_SOCKET, SO_ERROR, &so_error, &len);
                                                       ^~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48772:67: error: ‘SO_ERROR’ undeclared (first use in this function); did you mean ‘UA_ERRNO’?
                 int ret = UA_getsockopt(clientsockfd, SOL_SOCKET, SO_ERROR, &so_error, &len);
                                                                   ^~~~~~~~
                                                                   UA_ERRNO
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48772:89: error: ‘len’ undeclared (first use in this function)
                 int ret = UA_getsockopt(clientsockfd, SOL_SOCKET, SO_ERROR, &so_error, &len);
                                                                                         ^~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48777:37: error: ‘ECONNREFUSED’ undeclared (first use in this function); did you mean ‘WCONTINUED’?
                     if (so_error != ECONNREFUSED) {
                                     ^~~~~~~~~~~~
                                     WCONTINUED
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48782:41: warning: passing argument 1 of ‘UA_freeaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
                         UA_freeaddrinfo(server);
                                         ^~~~~~
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25726:6: note: expected ‘struct addrinfo *’ but argument is of type ‘struct addrinfo *’
 void UA_freeaddrinfo(struct addrinfo *res);//equivalent to posix freeaddrinfo implementatio
      ^~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48802:21: warning: passing argument 1 of ‘UA_freeaddrinfo’ from incompatible pointer type [-Wincompatible-pointer-types]
     UA_freeaddrinfo(server);
                     ^~~~~~
In file included from /home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:28:0:
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.h:25726:6: note: expected ‘struct addrinfo *’ but argument is of type ‘struct addrinfo *’
 void UA_freeaddrinfo(struct addrinfo *res);//equivalent to posix freeaddrinfo implementatio
      ^~~~~~~~~~~~~~~
/home/mohamad/workspace/DIIG/OpcUADIIG-Server/open62541.c:48816:8: warning: implicit declaration of function ‘UA_socket_set_blocking’ [-Wimplicit-function-declaration]
     if(UA_socket_set_blocking(clientsockfd) != UA_STATUSCODE_GOOD) {
        ^~~~~~~~~~~~~~~~~~~~~~
CMakeFiles/OpcUAServer.dir/build.make:62: recipe for target 'CMakeFiles/OpcUAServer.dir/open62541.c.o' failed
make[2]: *** [CMakeFiles/OpcUAServer.dir/open62541.c.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/OpcUAServer.dir/all' failed
make[1]: *** [CMakeFiles/OpcUAServer.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

Как говорится в вопросе, у меня возникла проблема со следующим кодом:

#pragma once
#include "includes.h"
#include "buffer.h"


class CSocket
{
    bool udp;
    int format;
    char formatstr[30];
    static sockaddr SenderAddr;
    int receivetext(char*buf, int max);
public:

    SOCKET sockid;
    CSocket(SOCKET sock);
    CSocket();
    ~CSocket();
    bool tcpconnect(char*address, int port, int mode);
    bool tcplisten(int port, int max, int mode);
    CSocket* tcpaccept(int mode);
    char* tcpip();
    void setnagle(bool enabled);
    bool tcpconnected();
    int setsync(int mode);
    bool udpconnect(int port, int mode);
    int sendmessage(char*ip, int port, CBuffer* source);
    int receivemessage(int len, CBuffer*destination);
    int peekmessage(int size, CBuffer*destination);
    int lasterror();
    static char* GetIp(char*address);
    static int SockExit(void);
    static int SockStart(void);
    static char* lastinIP(void);
    static unsigned short lastinPort(void);
    static char* myhost();
    int SetFormat(int mode, char* sep);
};

Я использую Code::Blocks. Я получаю следующую ошибку во время сборки:

/home/nick/Desktop/39dylibsource/Base Code/39dll/socket.h|15|error: ‘SOCKET’ does not name a type|
/home/nick/Desktop/39dylibsource/Base Code/39dll/socket.h|16|error: expected ‘)’ before ‘sock’|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|16|error: expected constructor, destructor, or type conversion before ‘(’ token|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|25|error: expected constructor, destructor, or type conversion before ‘(’ token|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|34|error: expected constructor, destructor, or type conversion before ‘(’ token|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|43|error: expected constructor, destructor, or type conversion before ‘(’ token|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|50|error: expected constructor, destructor, or type conversion before ‘(’ token|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|59|error: expected constructor, destructor, or type conversion before ‘(’ token|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|66|error: expected constructor, destructor, or type conversion before ‘(’ token|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|74|error: expected constructor, destructor, or type conversion before ‘(’ token|
/home/nick/Desktop/39dylibsource/Base Code/39dll/main.cpp|85|error: expected constructor, destructor, or type conversion before ‘(’ token|
||=== Build finished: 11 errors, 0 warnings ===|

Я включил следующее в указанный файл include.h:

#include <sys/socket.h>
#include <sys/types.h>

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>

Мне не хватает директивы или библиотеки? SOCKET пишется по-другому? Любое освещение было бы здорово!

    msm.ru

    Нравится ресурс?

    Помоги проекту!

    !
    информация о разделе

    user posted image Данный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных — обсуждаем в разделе «Базы данных: общие вопросы». Убедительная просьба — соблюдать «Правила форума» и не пренебрегать «Правильным оформлением своих тем». Прежде, чем создавать тему, имеет смысл заглянуть в раздел «Базы данных: FAQ», возможно там уже есть ответ.

    >
    mysql C api при компиляции ошибка

    • Подписаться на тему
    • Сообщить другу
    • Скачать/распечатать тему



    Сообщ.
    #1

    ,
    26.07.08, 16:37

      Привет всем!
      возник теперь вопрос как откомпилить приложения на Си с использование Апи МуСкула?

      ExpandedWrap disabled

        #include <stdio.h>

        #include <mysql.h>

        MYSQL *conn;    /* pointer to connection handler */

        int main ( int argc, char *argv[] )

        {

            conn = mysql_init ( NULL );

            mysql_real_connect (

                    conn,           /* pointer to connection handler */

                    «localhost»,    /* host to connect to */

                    «user_name»,    /* user name */

                    «password»,     /* password */

                    «test»,         /* database to use */

                    0,              /* port (default 3306) */

                    NULL,           /* socket or /var/lib/mysql.sock */

                    0 );            /* flags (none) */

            mysql_close ( conn );

            return 0;

        }

      gcc a.c -o a.exe -Lc:mysqlbin -Ic:mysqlinclude

      И в итоги получаю такое сообщение

      In file included from include/mysql.h:72,
      from a.c:2:
      include/mysql_com.h:183: error: `SOCKET’ does not name a type
      include/mysql_com.h:358: error: `SOCKET’ was not declared in this scope
      include/mysql_com.h:358: error: expected primary-expression before «const»
      include/mysql_com.h:358: error: expected primary-expression before «unsigned»
      include/mysql_com.h:359: error: expected primary-expression before «unsigned»
      include/mysql_com.h:359: error: initializer expression list treated as compound expression

      Плз, почему возникает такая ошибка


      Шадофф



      Сообщ.
      #2

      ,
      26.07.08, 20:03

        Странно, по указанным строкам в указанном файле нет вообще ни каких упоминаний про структуру SOCKET.
        А! В mysql.h нашлось. Ясно. Это так описали…

        Цитата

        Плз, почему возникает такая ошибка

        Не находит описания SOCKET. #include <winsock.h> в исходнике явно есть. Сталбыть, компиль не видит winsock.h…
        Кроме того, насколько я понимаю, это cygwin? Под вяндой лучше поставить себе «аналог» cygwin’а (в основе лежит mingw) — Dev-C++. Из портов поставить библиотеки и исходники и забыть о всех проблемах.


        Шадофф



        Сообщ.
        #3

        ,
        27.07.08, 06:18

          Немного подумав. Речь идёт вот об этом -> http://www.bloodshed.net/dev/devcpp.html

          Ктому же, хоть gcc.exe и в винде, он по идее, должен «понимать» где находится, но не худо было бы ему явно указать это.
          -DWIN32 -D_WINDOWS -no-cygwin (чтобы полученная программа не требовала бы окружения cygwin при её распространении).

          Хотя, если честно, то лучше прогуляться по ссылке выше, скачатьоттуда порядка 5 MB, потом налоить через менеджер пакетов обновления (mysql и postgres там есть) и забыть о проблемах.

          Добавлено 27.07.08, 06:19

          Кстати, а точно библиотека mysql лежит в c:mysqlbin?


          itwork



          Сообщ.
          #4

          ,
          27.07.08, 08:57

            Цитата Шадофф @ 26.07.08, 20:03

            Под вяндой лучше поставить себе «аналог» cygwin’а (в основе лежит mingw) — Dev-C++

            т.е имели ввиду использовать mingw32-gcc!?

            mingw32-gcc aaa.c -o aaa.exe -Lc:mysqllibopt -Ic:mysqlinclude -DWIN32 -D_WINDOWS -no-cygwin

            результат тотже :(

            Сообщение отредактировано: itwork — 27.07.08, 09:01


            Шадофф



            Сообщ.
            #5

            ,
            27.07.08, 10:13

              Цитата

              т.е имели ввиду использовать mingw32-gcc!?

              Угу. Он в Dev-C++ (в среду) встроенный. Это не сильно важно. Важнее другое — там все пути сразу подточены. В данном случае, по-моему, не находит заголовочный файл от win. Он вообще есть? Я имею ввиду winsock.h?


              itwork



              Сообщ.
              #6

              ,
              27.07.08, 10:23

                c:MinGWinclude
                да winsock.h есть


                itwork



                Сообщ.
                #7

                ,
                27.07.08, 19:51

                  понял!!! это дело в mysql.h!
                  #ifdef __LCC__
                  #include <winsock.h> /* For windows */
                  #endif

                  вот токо как правильно mysql.h отредактировать :blink:

                  Сообщение отредактировано: itwork — 27.07.08, 20:02


                  Шадофф



                  Сообщ.
                  #8

                  ,
                  28.07.08, 07:16

                    Я то же. Блин, я тормоз. Понял это когда глянул свой проект примерно трёх-летней давности…

                    Цитата

                    это дело в mysql.h!

                    Отчасти да.

                    Короче, для решения всех проблем надо сделать следующее:

                    ExpandedWrap disabled

                      #include <my_global.h>

                      #include <mysql.h>

                    Вот именно в таком порядке эти два файла должны быть прописаны в исходнике. В my_global.h прописаны «конвертации» для платформы винды. И, на винде, оно так и должно быть прописано.
                    Дальше, включаем либы:
                    1 вариант (он немного лучше) — привязываем к проекту libmysql.lib. По сути дела, это враппер для загрузки по требованию libmysql.dll во время исполнения.
                    2 вариант (он хорош для случая, когда программа должна загружаться вся целиком (без длл по возможности)) — привязываем к проекту статическую либу mysqlclient.lib. В этом случае весь функционал библиотеки будет сразу включён в твой исполняемый файл.

                    Кроме того, в проекте должны быть привязаны либы -lm -lwsock32 -luser32 -lgcc.

                    Сообщение отредактировано: Шадофф — 28.07.08, 07:17

                    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)

                    0 пользователей:

                    • Предыдущая тема
                    • Базы данных: SQL
                    • Следующая тема

                    Рейтинг@Mail.ru

                    [ Script execution time: 0,0323 ]   [ 15 queries used ]   [ Generated: 9.02.23, 15:19 GMT ]  


                    Форум программистов Vingrad

                    Поиск:

                    Ответ в темуСоздание новой темы
                    Создание опроса
                    > [qt] работа с mysql.h 

                    :(

                       

                    Опции темы

                    Saman
                    Дата 21.3.2008, 17:05 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Новичок

                    Профиль
                    Группа: Участник
                    Сообщений: 37
                    Регистрация: 7.7.2007

                    Репутация: нет
                    Всего: нет

                    при добавлении строчки 

                    Код

                    #include "mysql.h"

                    при компилляции выдаёт следующие ошибки

                    Код

                    In file included from mysql.h:57,
                                     from main.cpp:3:
                    mysql_com.h:183: error: `SOCKET' does not name a type
                    mysql_com.h:347: error: `SOCKET' was not declared in this scope
                    mysql_com.h:347: error: expected primary-expression before "const"
                    mysql_com.h:347: error: expected primary-expression before "unsigned"
                    mysql_com.h:348: error: expected primary-expression before "unsigned"
                    mysql_com.h:348: error: initializer expression list treated as compound expression
                    main.cpp: In function `int qMain(int, char**)':

                    PM   Вверх
                    JackYF
                    Дата 21.3.2008, 17:51 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    полуавантюрист
                    ****

                    Профиль
                    Группа: Участник
                    Сообщений: 5814
                    Регистрация: 28.8.2004
                    Где: страна тысячи озё р

                    Репутация: 1
                    Всего: 162

                    Цитата(Saman @  21.3.2008,  16:05 Найти цитируемый пост)
                    #include «mysql.h»

                    а причём здесь qt?

                    ———————

                    Пожаловаться на меня как модератора можно здесь.

                    PM MAIL Jabber   Вверх
                    Saman
                    Дата 21.3.2008, 18:13 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Новичок

                    Профиль
                    Группа: Участник
                    Сообщений: 37
                    Регистрация: 7.7.2007

                    Репутация: нет
                    Всего: нет

                    насколько я знаю эту библиотеку можно цепануть к любым сям.
                    я не знаю как это сделать именно к qt

                    PM   Вверх
                    JackYF
                    Дата 21.3.2008, 20:10 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    полуавантюрист
                    ****

                    Профиль
                    Группа: Участник
                    Сообщений: 5814
                    Регистрация: 28.8.2004
                    Где: страна тысячи озё р

                    Репутация: 1
                    Всего: 162

                    Цитата(Saman @  21.3.2008,  17:13 Найти цитируемый пост)
                    я не знаю как это сделать именно к qt 

                    стоп. Ещё раз. Где исходник? Причём тут qt к ошибкам в подключении mysql.h?

                    ———————

                    Пожаловаться на меня как модератора можно здесь.

                    PM MAIL Jabber   Вверх
                    Saman
                    Дата 22.3.2008, 13:06 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Новичок

                    Профиль
                    Группа: Участник
                    Сообщений: 37
                    Регистрация: 7.7.2007

                    Репутация: нет
                    Всего: нет

                    дело в том, что поискав по инету инфу про mysql.h — например при подключении к билдеру необходимо в объявлении переменной my_socket поменять её тип.

                    как поступать в случае qt — я не знаю

                    исходник кину позже — но эта ошибка при компиляции появляется просто при добавлении 

                    Код

                    #include "mysql.h"

                    PM   Вверх
                    bsa
                    Дата 22.3.2008, 14:35 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Эксперт
                    ****

                    Профиль
                    Группа: Модератор
                    Сообщений: 9185
                    Регистрация: 6.4.2006
                    Где: Москва, Россия

                    Репутация: нет
                    Всего: 196

                    Saman, для начала попробуй добавлять не #include «mysql.h», а #include <mysql.h>.
                    Какая версия mysql у тебя установлена?
                    В опциях компилятора пути до этого файла прописаны (например, -I/usr/include/mysql)?

                    ———————

                    Правильно заданный вопрос — половина ответа
                    Отзывы о работе модератора.

                    PM   Вверх
                    Saman
                    Дата 22.3.2008, 17:41 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Новичок

                    Профиль
                    Группа: Участник
                    Сообщений: 37
                    Регистрация: 7.7.2007

                    Репутация: нет
                    Всего: нет

                    работаю под мастдаем

                    мускул 5.0.21

                    строчку -Iпуть_до_инклудов_мускула прописывать после mingw32-make?

                    PM   Вверх
                    bsa
                    Дата 22.3.2008, 20:00 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Эксперт
                    ****

                    Профиль
                    Группа: Модератор
                    Сообщений: 9185
                    Регистрация: 6.4.2006
                    Где: Москва, Россия

                    Репутация: нет
                    Всего: 196

                    вообще-то эту строчку надо прописывать как опцию компилятора (как именно — зависит от среды разработки, в которой пишешь).

                    ———————

                    Правильно заданный вопрос — половина ответа
                    Отзывы о работе модератора.

                    PM   Вверх
                    Saman
                    Дата 23.3.2008, 10:08 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Новичок

                    Профиль
                    Группа: Участник
                    Сообщений: 37
                    Регистрация: 7.7.2007

                    Репутация: нет
                    Всего: нет

                    mingw32-make — это как раз компиллятор
                    т.е. 

                    Код

                    mingw32-make -Iпуть_до_инклудов_мускула

                    ?

                    PM   Вверх
                    HiTech
                    Дата 31.3.2008, 13:33 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Новичок

                    Профиль
                    Группа: Участник
                    Сообщений: 1
                    Регистрация: 28.3.2008
                    Где: г. Нижний Тагил

                    Репутация: нет
                    Всего: нет

                    Код

                    #if defined(_WIN32) || defined(_WIN64)
                    #include <windows.h>
                    #endif

                    <<— Это поюзай

                    PM MAIL ICQ   Вверх
                    Saman
                    Дата 2.4.2008, 07:29 (ссылка)
                    | (нет голосов)
                    Загрузка ... Загрузка …




                    Быстрая цитата

                    Цитата

                    Новичок

                    Профиль
                    Группа: Участник
                    Сообщений: 37
                    Регистрация: 7.7.2007

                    Репутация: нет
                    Всего: нет

                    какая тут кроссплатформенность?

                    PM   Вверх



















                    Ответ в темуСоздание новой темы
                    Создание опроса
                    Правила форума «C++: Базы данных»
                    chipset

                    Данный форум предназначен для обсуждения вопросов прямым образом связанных с C++ и БД. Так, вопросы только по C++ следует задавать в C++:Общие вопросы а вопросы по абстрактным БД в Базах данных или в соответствующих под-форумах.

                    Благодарим за понимание.


                    Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, chipset.

                     

                    0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
                    0 Пользователей:
                    « Предыдущая тема | C/C++: Базы данных | Следующая тема »
                    • Summary

                    • Files

                    • Reviews

                    • Support

                    • News

                    • Discussion

                    • Donate

                    Menu

                    Error when I try to compile


                    Creator:
                    Anonymous

                    Created:

                    2012-10-15

                    Updated:

                    2013-05-28

                    • Anonymous

                      Hi,
                      I am using VS2010 express ( also codelite ). I got an error trying to compile a test code. This is the error I got when I compile in VS2010:

                      1>—- Rebuild All started: Project: sockets, Configuration: Debug Win32 —-
                      1>  sockets.cpp
                      1>sockets.obj : error LNK2019: unresolved external symbol «public: __thiscall NL::Socket::~Socket(void)» (??1Socket@NL@@QAE@XZ) referenced in function _main
                      1>sockets.obj : error LNK2019: unresolved external symbol «public: void __thiscall NL::Socket::send(void const *,unsigned int)» (?send@Socket@NL@@QAEXPBXI@Z) referenced in function _main
                      1>sockets.obj : error LNK2019: unresolved external symbol «public: __thiscall NL::Socket::Socket(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,unsigned int,enum NL::Protocol,enum NL::IPVer)» (??0Socket@NL@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IW4Protocol@1@W4IPVer@1@@Z) referenced in function _main
                      1>sockets.obj : error LNK2019: unresolved external symbol «void __cdecl NL::init(void)» (?init@NL@@YAXXZ) referenced in function _main
                      1>D:DesarrollosCppSocketVSsocketsDebugsockets.exe : fatal error LNK1120: 4 unresolved externals
                      ========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

                      I have added ws2_32.lib but I got error

                      Thanks in advance any suggestion

                    • Pedro Francisco Pareja Ruiz

                      Hello,

                      Looks like you included the headers but didn’t included in the project the «netlink.lib» (or whatever you named it in the static library project).

                      To use the library:

                      1- First create a project (static library) and include the sources of the «src» folder to compile and include «include» folder in headers path. Building it you get a lib file.
                      2- Use the headers of the «include» folder in headers path and also link against the lib file you created in the previous step to use the library in your project.

                      Can you confirm me if that was the cause?

                    • Anonymous

                      Hi,

                      Thanks for your responsde.
                      Indeed, I didnt realize that I have to build a static lib first.

                      Let me try, and I will tell you

                    • Anonymous

                      Hi
                      I have a similar problem. example (ehoserver)  is compiled with the following error:

                      ||=== test_2, Debug ===|
                      /home/me/workspace/test_2/netlink/socket.h|39|error: expected constructor, destructor, or type conversion before ‘class’|
                      /home/me/workspace/test_2/netlink/socket.inline.h|34|error: ‘Socket’ has not been declared|
                      /home/me/workspace/test_2/netlink/socket.inline.h|34|error: non-member function ‘const std::string& hostTo()’ cannot have cv-qualifier|
                      /home/me/workspace/test_2/netlink/socket.inline.h||In function ‘const std::string& hostTo()’:|
                      /home/me/workspace/test_2/netlink/socket.inline.h|36|error: ‘_hostTo’ was not declared in this scope|
                      /home/me/workspace/test_2/netlink/socket.inline.h|45|error: ‘Socket’ has not been declared|
                      /home/me/workspace/test_2/netlink/socket.inline.h|45|error: non-member function ‘const std::string& hostFrom()’ cannot have cv-qualifier|
                      /home/me/workspace/test_2/netlink/socket.inline.h||In function ‘const std::string& hostFrom()’:|
                      /home/me/workspace/test_2/netlink/socket.inline.h|47|error: ‘_hostFrom’ was not declared in this scope|
                      /home/me/workspace/test_2/netlink/socket.inline.h|56|error: ‘Socket’ has not been declared|
                      /home/me/workspace/test_2/netlink/socket.inline.h|56|error: non-member function ‘unsigned int portTo()’ cannot have cv-qualifier|
                      /home/me/workspace/test_2/netlink/socket.inline.h||In function ‘unsigned int portTo()’:|
                      /home/me/workspace/test_2/netlink/socket.inline.h|58|error: ‘_portTo’ was not declared in this scope|
                      /home/me/workspace/test_2/netlink/socket.inline.h|67|error: ‘Socket’ has not been declared|
                      /home/me/workspace/test_2/netlink/socket.inline.h|67|error: non-member function ‘unsigned int portFrom()’ cannot have cv-qualifier|
                      /home/me/workspace/test_2/netlink/socket.inline.h||In function ‘unsigned int portFrom()’:|
                      /home/me/workspace/test_2/netlink/socket.inline.h|69|error: ‘_portFrom’ was not declared in this scope|
                      /home/me/workspace/test_2/netlink/socket.inline.h|77|error: ‘Protocol’ does not name a type|
                      /home/me/workspace/test_2/netlink/socket.inline.h|87|error: ‘IPVer’ does not name a type|
                      /home/me/workspace/test_2/netlink/socket.inline.h|97|error: ‘SocketType’ does not name a type|
                      /home/me/workspace/test_2/netlink/socket.inline.h|110|error: ‘Socket’ has not been declared|
                      /home/me/workspace/test_2/netlink/socket.inline.h|110|error: non-member function ‘unsigned int listenQueue()’ cannot have cv-qualifier|
                      /home/me/workspace/test_2/netlink/socket.inline.h||In function ‘unsigned int listenQueue()’:|
                      /home/me/workspace/test_2/netlink/socket.inline.h|112|error: ‘_listenQueue’ was not declared in this scope|
                      /home/me/workspace/test_2/netlink/socket.inline.h|121|error: ‘Socket’ has not been declared|
                      /home/me/workspace/test_2/netlink/socket.inline.h|121|error: non-member function ‘bool blocking()’ cannot have cv-qualifier|
                      /home/me/workspace/test_2/netlink/socket.inline.h||In function ‘bool blocking()’:|
                      /home/me/workspace/test_2/netlink/socket.inline.h|123|error: ‘_blocking’ was not declared in this scope|
                      /home/me/workspace/test_2/netlink/socket.inline.h|134|error: ‘Socket’ has not been declared|
                      /home/me/workspace/test_2/netlink/socket.inline.h|134|error: non-member function ‘int socketHandler()’ cannot have cv-qualifier|
                      /home/me/workspace/test_2/netlink/socket.inline.h||In function ‘int socketHandler()’:|
                      /home/me/workspace/test_2/netlink/socket.inline.h|136|error: ‘_socketHandler’ was not declared in this scope|
                      /home/me/workspace/test_2/main.cpp|9|error: expected constructor, destructor, or type conversion before ‘int’|
                      ||=== Build finished: 26 errors, 0 warnings ===|

                      I program in Code :: Blocks IDE and put my archive project:

                      http://depositfiles.com/rmv/8119164037975235
                      that suggest?

                    • Anonymous

                    • Pedro Francisco Pareja Ruiz

                      Hello Kisly,

                      I have found where the problem is. You have modified library source files: for example in socket.h commenting

                      #include «netlink/core.h»

                      replacing it for

                      #include «socket.h»

                      (I don’t know why).

                      I assume you have changed the includes instructions inside the sources of the library because you had problems making the compiler find them but you only have to add the include folder in the search path of the compiler to make it find them rather to modify the code of the library (as this leads to errors).

                      So what I suggest you is:
                      * Do not modify the source code of the library.
                      * Add include folder (as it is in the library package) to the search path of the compiler (in codeblocks go to project -> build options -> search directories -> compiler -> add)

                      I also would suggest you to build the library as static library instead of including all the sources files each time but this is totally up to you.

                      Please let me know if this solved your problem.

                      Regards.

                    • Anonymous

                      Hi,

                      I tried without succeed.

                      I build a small console project.

                      I added all files, and include «netlink include folder» in codelite search

                      I got this:

                      g++  -c  «D:/Desarrollos/Librerias/netlibsocket/src/socket.cc» -g -O0 -Wall  -o ./Debug/src_socket.o -I. -ID:/Desarrollos/Librerias/netlibsocket/include/ -I.
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc:39:27: error: variable or field ‘freeaddrinfo’ declared void
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc:39:27: error: ‘PADDRINFOA’ was not declared in this scope
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc: In function ‘const char* NL::inet_ntop(int, const void*, char*, socklen_t)’:
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc:53:49: error: ‘getnameinfo’ was not declared in this scope
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc:63:50: error: ‘getnameinfo’ was not declared in this scope
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc: In member function ‘void NL::Socket::initSocket()’:
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc:180:56: error: ‘getaddrinfo’ was not declared in this scope
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc:182:54: error: ‘freeaddrinfo’ was not declared in this scope
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc: In member function ‘void NL::Socket::sendTo(const void*, size_t, const string&, unsigned int)’:
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc:461:66: error: ‘getaddrinfo’ was not declared in this scope
                      D:/Desarrollos/Librerias/netlibsocket/src/socket.cc:463:54: error: ‘freeaddrinfo’ was not declared in this scope
                      mingw32-make.exe: ***  Error 1
                      netlibsocket.mk:121: recipe for target `Debug/src_socket.o’ failed
                      mingw32-make.exe: Leaving directory `D:/Desarrollos/Librerias/netlibsocket’
                      mingw32-make.exe: ***  Error 2
                      netlibsocket_wsp.mk:4: recipe for target `All’ failed
                      ——-Build Ended——-
                      8 errors, 0 warnings

                      Could you put a full project for download?

                    • Pedro Francisco Pareja Ruiz

                      Hi,

                      As for the version 1.0.0-pre3 Mingw is not supported and the library doesn’t work for this compiler.

                      For windows platform is officially supported and tested Visual C++ 2008 Express Edition (you can download it for free). Any further version (as VC++ 2010) should be fine.

                      The compilers supported and tested are:

                      Windows: VC++ 2008+
                      OSX: g++
                      Linux: g++, intel compiler

                      I hope this helps.
                      Regards.


                    Log in to post a comment.

                    Понравилась статья? Поделить с друзьями:
                  • Error snapshotting volumes disk2vhd как исправить
                  • Error snap pycharm community has install snap change in progress
                  • Error smbd is already running
                  • Error smart status bad
                  • Error sleep was not declared in this scope