artyom-beilis / cppcms

CppCMS Framework
Other
450 stars 111 forks source link

[Docker] Tests fails at aio_socket IPV6 and locale_format/boundary #81

Open theGitpster45 opened 3 years ago

theGitpster45 commented 3 years ago

Hi I'm trying to create a Dockerfile that runs a CppCMS application in a NGINX web server. However, the command make tests always returns that the tests fail at test_locale_format , test_locale_boundary and test_aio_socket . The two first are solved by applying the option -DDISABLE_ICU_LOCALE=ON. I checked if the image has some services using the port 8080, but it's not the case.

cppcms_test_fail

Specifications:

RUN apt-get update && \ apt-get install -y --no-install-recommends \ build-essential git cmake libpcre3-dev zlib1g-dev libgcrypt20-dev libicu-dev python

ENV CTEST_OUTPUT_ON_FAILURE=1

WORKDIR /etc/nginx/sites-available/app/

COPY /cppcms ./lib/cppcms

RUN cd ./lib/cppcms/build && \ cmake -DDISABLE_ICU_LOCALE=ON .. && \ make && \ make test && \ make install

RUN c++ hello.cpp -lcppcms -o hello

CMD ["./hello" "-c" "config/config.js"]



- CMAKE output

-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for newlocale
-- Looking for newlocale - found
-- Performing Test LIBC_ICONV
-- Performing Test LIBC_ICONV - Success
-- Performing Test GCC_IS_GCC4
-- Performing Test GCC_IS_GCC4 - Success
-- Looking for dlopen
-- **Looking for dlopen - not found**
-- Looking for socket
-- Looking for socket - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Performing Test BOOSTER_HAS_GCC_SYNC
-- Performing Test BOOSTER_HAS_GCC_SYNC - Success
-- Performing Test BOOSTER_HAVE_GCC_BITS_EXCHANGE_AND_ADD
-- **Performing Test BOOSTER_HAVE_GCC_BITS_EXCHANGE_AND_ADD - Failed**
-- Performing Test BOOSTER_HAVE_GCC_EXT_EXCHANGE_AND_ADD
-- Performing Test BOOSTER_HAVE_GCC_EXT_EXCHANGE_AND_ADD - Success
-- Performing Test BOOSTER_HAVE_FREEBSD_ATOMIC
-- **Performing Test BOOSTER_HAVE_FREEBSD_ATOMIC - Failed**
-- Performing Test BOOSTER_HAVE_EXECINFO
-- Performing Test BOOSTER_HAVE_EXECINFO - Success
-- Performing Test BOOSTER_HAVE_UNWIND_BACKTRACE
-- Performing Test BOOSTER_HAVE_UNWIND_BACKTRACE - Success
-- Performing Test BOOSTER_HAVE_UNWIND_BACKTRACE_BUILTIN
-- **Performing Test BOOSTER_HAVE_UNWIND_BACKTRACE_BUILTIN - Failed**
-- Performing Test BOOSTER_HAVE_SOLARIS_ATOMIC
-- Performing Test BOOSTER_HAVE_SOLARIS_ATOMIC - Failed
-- Performing Test BOOSTER_HAVE_MAC_OS_X_ATOMIC
-- Performing Test BOOSTER_HAVE_MAC_OS_X_ATOMIC - Failed
-- Performing Test BOOSTER_HAVE_STDINT_H
-- Performing Test BOOSTER_HAVE_STDINT_H - Success
-- Performing Test BOOSTER_HAVE_INTTYPES_H
-- Performing Test BOOSTER_HAVE_INTTYPES_H - Success
-- Performing Test BOOSTER_AIO_HAVE_PF_INET6
-- Performing Test BOOSTER_AIO_HAVE_PF_INET6 - Success
-- Performing Test HAVE_WINDOWS6_API
-- Performing Test HAVE_WINDOWS6_API - Failed
-- Performing Test CPPCMS_HAVE_STDINT_H
-- Performing Test CPPCMS_HAVE_STDINT_H - Success
-- Performing Test CPPCMS_HAVE_INTTYPES_H
-- Performing Test CPPCMS_HAVE_INTTYPES_H - Success
-- Looking for atoll
-- Looking for atoll - found
-- Looking for _atoi64
-- **Looking for _atoi64 - not found**
-- Looking for snprintf
-- Looking for snprintf - found
-- Looking for stat
-- Looking for stat - found
-- Looking for _stat
-- **Looking for _stat - not found**
-- Performing Test CPPCMS_HAVE_STD_WSTRING
-- Performing Test CPPCMS_HAVE_STD_WSTRING - Success
-- Performing Test CPPCMS_HAVE_BSD_TM
-- Performing Test CPPCMS_HAVE_BSD_TM - Success
-- Performing Test CPPCMS_HAVE_CPP0X_UXSTRING
-- Performing Test CPPCMS_HAVE_CPP0X_UXSTRING - Success
-- Performing Test CPPCMS_HAVE_CPP_0X_AUTO
-- Performing Test CPPCMS_HAVE_CPP_0X_AUTO - Success
-- Performing Test CPPCMS_HAVE_CPP_0X_DECLTYPE
-- Performing Test CPPCMS_HAVE_CPP_0X_DECLTYPE - Success
-- Performing Test CPPCMS_HAVE_GCC_TYPEOF
-- Performing Test CPPCMS_HAVE_GCC_TYPEOF - Success
-- Performing Test CPPCMS_HAVE_UNDERSCORE_TYPEOF
-- Performing Test CPPCMS_HAVE_UNDERSCORE_TYPEOF - Success
-- Performing Test CPPCMS_HAVE_FSEEKO
-- Performing Test CPPCMS_HAVE_FSEEKO - Success
-- Performing Test CPPCMS_HAVE_FSEEKI64
-- Performing Test **CPPCMS_HAVE_FSEEKI64 - Failed**
-- Looking for dlopen
-- **Looking for dlopen - not found**
-- Looking for dlopen in dl
-- Looking for dlopen in dl - found
-- Looking for socket
-- Looking for socket - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for canonicalize_file_name
-- Looking for canonicalize_file_name - found
-- Looking for pthread_mutexattr_setpshared
-- **Looking for pthread_mutexattr_setpshared - not found**
-- Looking for pthread_mutexattr_setpshared in /usr/lib/x86_64-linux-gnu/libpthread.so
-- Looking for pthread_mutexattr_setpshared in /usr/lib/x86_64-linux-gnu/libpthread.so - found
artyom-beilis commented 3 years ago

It fails test of using IPv6 protocol. while from what I understand IPv4 works ok.

It maybe related to runtime-docker envronment. I don't think it is critical issue just no-IPV-6 availability