[ https://issues.apache.org/jira/browse/THRIFT-3187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14611993#comment-14611993 ]
James E. King, III commented on THRIFT-3187: -------------------------------------------- Agree, however the build & test cycle should not fail just because libevent is not installed. It should skip those tests. > "make cross" fails in cpp build if non-blocking server is not available > ----------------------------------------------------------------------- > > Key: THRIFT-3187 > URL: https://issues.apache.org/jira/browse/THRIFT-3187 > Project: Thrift > Issue Type: Bug > Components: C++ - Library > Affects Versions: 0.9.3 > Environment: Ubuntu 12.04.2 LTS > Reporter: James E. King, III > Priority: Minor > > Ran: bootstrap.sh, then configure, then make, then make cross. > Configure output: > {noformat} > jking@dvm-4:~/thrift$ ./configure > checking for a BSD-compatible install... /usr/bin/install -c > checking whether build environment is sane... yes > checking for a thread-safe mkdir -p... /bin/mkdir -p > checking for gawk... gawk > checking whether make sets $(MAKE)... yes > checking whether make supports nested variables... yes > checking whether UID '1001' is supported by ustar format... yes > checking whether GID '1001' is supported by ustar format... yes > checking how to create a ustar tar archive... gnutar > checking for pkg-config... /usr/bin/pkg-config > checking pkg-config is at least version 0.9.0... yes > checking for gcc... gcc > checking whether the C compiler works... yes > checking for C compiler default output file name... a.out > checking for suffix of executables... > checking whether we are cross compiling... no > checking for suffix of object files... o > checking whether we are using the GNU C compiler... yes > checking whether gcc accepts -g... yes > checking for gcc option to accept ISO C89... none needed > checking whether gcc understands -c and -o together... yes > checking for style of include used by make... GNU > checking dependency style of gcc... gcc3 > checking how to run the C preprocessor... gcc -E > checking for g++... g++ > checking whether we are using the GNU C++ compiler... yes > checking whether g++ accepts -g... yes > checking dependency style of g++... gcc3 > checking build system type... x86_64-unknown-linux-gnu > checking host system type... x86_64-unknown-linux-gnu > checking how to print strings... printf > checking for a sed that does not truncate output... /bin/sed > checking for grep that handles long lines and -e... /bin/grep > checking for egrep... /bin/grep -E > checking for fgrep... /bin/grep -F > checking for ld used by gcc... /usr/bin/ld > checking if the linker (/usr/bin/ld) is GNU ld... yes > checking for BSD- or MS-compatible name lister (nm)... /usr/local/bin/nm -B > checking the name lister (/usr/local/bin/nm -B) interface... BSD nm > checking whether ln -s works... yes > checking the maximum length of command line arguments... 1572864 > checking whether the shell understands some XSI constructs... yes > checking whether the shell understands "+="... yes > checking how to convert x86_64-unknown-linux-gnu file names to > x86_64-unknown-linux-gnu format... func_convert_file_noop > checking how to convert x86_64-unknown-linux-gnu file names to toolchain > format... func_convert_file_noop > checking for /usr/bin/ld option to reload object files... -r > checking for objdump... objdump > checking how to recognize dependent libraries... pass_all > checking for dlltool... no > checking how to associate runtime and link libraries... printf %s\n > checking for ar... ar > checking for archiver @FILE support... @ > checking for strip... strip > checking for ranlib... ranlib > checking command to parse /usr/local/bin/nm -B output from gcc object... ok > checking for sysroot... no > checking for mt... mt > checking if mt is a manifest tool... no > checking for ANSI C header files... yes > checking for sys/types.h... yes > checking for sys/stat.h... yes > checking for stdlib.h... yes > checking for string.h... yes > checking for memory.h... yes > checking for strings.h... yes > checking for inttypes.h... yes > checking for stdint.h... yes > checking for unistd.h... yes > checking for dlfcn.h... yes > checking for objdir... .libs > checking if gcc supports -fno-rtti -fno-exceptions... no > checking for gcc option to produce PIC... -fPIC -DPIC > checking if gcc PIC flag -fPIC -DPIC works... yes > checking if gcc static flag -static works... yes > checking if gcc supports -c -o file.o... yes > checking if gcc supports -c -o file.o... (cached) yes > checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared > libraries... yes > checking whether -lc should be explicitly linked in... no > checking dynamic linker characteristics... GNU/Linux ld.so > checking how to hardcode library paths into programs... immediate > checking whether stripping libraries is possible... yes > checking if libtool supports shared libraries... yes > checking whether to build shared libraries... yes > checking whether to build static libraries... yes > checking how to run the C++ preprocessor... g++ -E > checking for ld used by g++... /usr/bin/ld -m elf_x86_64 > checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes > checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared > libraries... yes > checking for g++ option to produce PIC... -fPIC -DPIC > checking if g++ PIC flag -fPIC -DPIC works... yes > checking if g++ static flag -static works... yes > checking if g++ supports -c -o file.o... yes > checking if g++ supports -c -o file.o... (cached) yes > checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared > libraries... yes > checking dynamic linker characteristics... (cached) GNU/Linux ld.so > checking how to hardcode library paths into programs... immediate > checking whether make sets $(MAKE)... (cached) yes > checking for bison... yes > checking for bison version >= 2.5... yes > checking for bison... bison -y > checking for flex... flex > checking lex output file root... lex.yy > checking lex library... -lfl > checking whether yytext is a pointer... yes > checking whether ln -s works... yes > checking for gawk... (cached) gawk > checking for ranlib... (cached) ranlib > checking whether g++ supports C++11 features by default... no > checking whether g++ supports C++11 features with -std=c++11... no > checking whether g++ supports C++11 features with -std=c++0x... no > configure: No compiler with C++11 support was found > checking for boostlib >= 1.53.0... yes > checking for pkg-config... /usr/bin/pkg-config > checking whether compiling and linking against OpenSSL works... yes > checking for libevent >= 1.0... no > checking for zlib >= 1.2.3... yes > checking for QT... no > checking for QT5... no > checking for GLIB... yes > checking for GOBJECT... yes > checking for MONO... no > checking for MONO... no > checking for javac and java... yes > checking for ant... /usr/bin/ant > checking for ant version > 1.7... yes > checking for erl... no > checking for erlc... no > checking for nodejs... no > checking for node... no > checking for npm... no > checking for a Lua interpreter with version >= 5.2... none > checking for a Python interpreter with version >= 2.4... python > checking for python... /usr/bin/python > checking for python version... 2.7 > checking for python platform... linux2 > checking for python script directory... ${prefix}/lib/python2.7/dist-packages > checking for python extension module directory... > ${exec_prefix}/lib/python2.7/dist-packages > checking for trial... /usr/bin/trial > checking for perl... /usr/bin/perl > checking for perl module Bit::Vector... ok > checking for perl module Class::Accessor... ok > checking for php... no > checking for phpunit... no > checking for ruby... /usr/bin/ruby > checking for bundle... no > checking for cabal... no > checking for runhaskell... no > checking for go... no > checking for haxe... no > checking for DMD... no > checking for library containing strerror... none required > checking for an ANSI C-conforming const... yes > checking for inline... inline > checking for working volatile... yes > checking for stdbool.h that conforms to C99... yes > checking for _Bool... no > checking for ANSI C header files... (cached) yes > checking whether time.h and sys/time.h may both be included... yes > checking for sys/wait.h that is POSIX.1 compatible... yes > checking return type of signal handlers... void > checking arpa/inet.h usability... yes > checking arpa/inet.h presence... yes > checking for arpa/inet.h... yes > checking sys/param.h usability... yes > checking sys/param.h presence... yes > checking for sys/param.h... yes > checking fcntl.h usability... yes > checking fcntl.h presence... yes > checking for fcntl.h... yes > checking for inttypes.h... (cached) yes > checking limits.h usability... yes > checking limits.h presence... yes > checking for limits.h... yes > checking netdb.h usability... yes > checking netdb.h presence... yes > checking for netdb.h... yes > checking netinet/in.h usability... yes > checking netinet/in.h presence... yes > checking for netinet/in.h... yes > checking pthread.h usability... yes > checking pthread.h presence... yes > checking for pthread.h... yes > checking stddef.h usability... yes > checking stddef.h presence... yes > checking for stddef.h... yes > checking for stdlib.h... (cached) yes > checking sys/socket.h usability... yes > checking sys/socket.h presence... yes > checking for sys/socket.h... yes > checking sys/time.h usability... yes > checking sys/time.h presence... yes > checking for sys/time.h... yes > checking sys/un.h usability... yes > checking sys/un.h presence... yes > checking for sys/un.h... yes > checking sys/poll.h usability... yes > checking sys/poll.h presence... yes > checking for sys/poll.h... yes > checking sys/resource.h usability... yes > checking sys/resource.h presence... yes > checking for sys/resource.h... yes > checking for unistd.h... (cached) yes > checking libintl.h usability... yes > checking libintl.h presence... yes > checking for libintl.h... yes > checking malloc.h usability... yes > checking malloc.h presence... yes > checking for malloc.h... yes > checking openssl/ssl.h usability... yes > checking openssl/ssl.h presence... yes > checking for openssl/ssl.h... yes > checking openssl/rand.h usability... yes > checking openssl/rand.h presence... yes > checking for openssl/rand.h... yes > checking openssl/x509v3.h usability... yes > checking openssl/x509v3.h presence... yes > checking for openssl/x509v3.h... yes > checking sched.h usability... yes > checking sched.h presence... yes > checking for sched.h... yes > checking wchar.h usability... yes > checking wchar.h presence... yes > checking for wchar.h... yes > checking for pthread_create in -lpthread... yes > checking for clock_gettime in -lrt... yes > checking for setsockopt in -lsocket... no > checking for BN_init in -lcrypto... yes > checking for SSL_ctrl in -lssl... yes > checking for int16_t... yes > checking for int32_t... yes > checking for int64_t... yes > checking for int8_t... yes > checking for mode_t... yes > checking for off_t... yes > checking for size_t... yes > checking for ssize_t... yes > checking for uint16_t... yes > checking for uint32_t... yes > checking for uint64_t... yes > checking for uint8_t... yes > checking for ptrdiff_t... yes > checking whether struct tm is in sys/time.h or time.h... time.h > checking whether AI_ADDRCONFIG is declared... yes > checking for working alloca.h... yes > checking for alloca... yes > checking for pid_t... yes > checking vfork.h usability... no > checking vfork.h presence... no > checking for vfork.h... no > checking for fork... yes > checking for vfork... yes > checking for working fork... yes > checking for working vfork... (cached) yes > checking for stdlib.h... (cached) yes > checking for GNU libc compatible malloc... yes > checking for working memcmp... yes > checking for stdlib.h... (cached) yes > checking for GNU libc compatible realloc... yes > checking sys/select.h usability... yes > checking sys/select.h presence... yes > checking for sys/select.h... yes > checking for sys/socket.h... (cached) yes > checking types of arguments for select... int,fd_set *,struct timeval * > checking whether lstat correctly handles trailing slash... yes > checking whether stat accepts an empty string... no > checking whether strerror_r is declared... yes > checking for strerror_r... yes > checking whether strerror_r returns char *... yes > checking for strftime... yes > checking for vprintf... yes > checking for _doprnt... no > checking for strtoul... yes > checking for bzero... yes > checking for ftruncate... yes > checking for gethostbyname... yes > checking for gethostbyname_r... yes > checking for gettimeofday... yes > checking for memmove... yes > checking for memset... yes > checking for mkdir... yes > checking for realpath... yes > checking for select... yes > checking for setlocale... yes > checking for socket... yes > checking for strchr... yes > checking for strdup... yes > checking for strerror... yes > checking for strstr... yes > checking for strtol... yes > checking for sqrt... yes > checking for alarm... yes > checking for clock_gettime... yes > checking for sched_get_priority_min... yes > checking for sched_get_priority_max... yes > checking for inet_ntoa... yes > checking for pow... yes > checking the behavior of a signed right shift... arithmetic > checking that generated files are newer than configure... done > configure: creating ./config.status > config.status: creating Makefile > config.status: creating compiler/cpp/Makefile > config.status: creating compiler/cpp/version.h > config.status: creating compiler/cpp/src/windows/version.h > config.status: creating lib/Makefile > config.status: creating lib/cpp/Makefile > config.status: creating lib/cpp/test/Makefile > config.status: creating lib/cpp/thrift-nb.pc > config.status: creating lib/cpp/thrift-z.pc > config.status: creating lib/cpp/thrift-qt.pc > config.status: creating lib/cpp/thrift-qt5.pc > config.status: creating lib/cpp/thrift.pc > config.status: creating lib/c_glib/Makefile > config.status: creating lib/c_glib/thrift_c_glib.pc > config.status: creating lib/c_glib/test/Makefile > config.status: creating lib/csharp/Makefile > config.status: creating lib/csharp/test/ThriftTest/Makefile > config.status: creating lib/d/Makefile > config.status: creating lib/d/test/Makefile > config.status: creating lib/erl/Makefile > config.status: creating lib/go/Makefile > config.status: creating lib/go/test/Makefile > config.status: creating lib/haxe/test/Makefile > config.status: creating lib/hs/Makefile > config.status: creating lib/java/Makefile > config.status: creating lib/js/test/Makefile > config.status: creating lib/nodejs/Makefile > config.status: creating lib/perl/Makefile > config.status: creating lib/perl/test/Makefile > config.status: creating lib/php/Makefile > config.status: creating lib/php/test/Makefile > config.status: creating lib/py/Makefile > config.status: creating lib/rb/Makefile > config.status: creating lib/lua/Makefile > config.status: creating test/Makefile > config.status: creating test/c_glib/Makefile > config.status: creating test/cpp/Makefile > config.status: creating test/erl/Makefile > config.status: creating test/go/Makefile > config.status: creating test/haxe/Makefile > config.status: creating test/hs/Makefile > config.status: creating test/php/Makefile > config.status: creating test/perl/Makefile > config.status: creating test/py/Makefile > config.status: creating test/py.twisted/Makefile > config.status: creating test/py.tornado/Makefile > config.status: creating test/rb/Makefile > config.status: creating tutorial/Makefile > config.status: creating tutorial/c_glib/Makefile > config.status: creating tutorial/cpp/Makefile > config.status: creating tutorial/go/Makefile > config.status: creating tutorial/haxe/Makefile > config.status: creating tutorial/hs/Makefile > config.status: creating tutorial/java/Makefile > config.status: creating tutorial/js/Makefile > config.status: creating tutorial/nodejs/Makefile > config.status: creating tutorial/py/Makefile > config.status: creating tutorial/py.twisted/Makefile > config.status: creating tutorial/py.tornado/Makefile > config.status: creating tutorial/rb/Makefile > config.status: creating config.h > config.status: config.h is unchanged > config.status: creating lib/cpp/src/thrift/config.h > config.status: lib/cpp/src/thrift/config.h is unchanged > config.status: executing depfiles commands > config.status: executing libtool commands > thrift 1.0.0-dev > Building C++ Library ......... : yes > Building C (GLib) Library .... : yes > Building Java Library ........ : yes > Building C# Library .......... : no > Building Python Library ...... : yes > Building Ruby Library ........ : no > Building Haxe Library ........ : no > Building Haskell Library ..... : no > Building Perl Library ........ : yes > Building PHP Library ......... : no > Building Erlang Library ...... : no > Building Go Library .......... : no > Building D Library ........... : no > Building NodeJS Library ...... : no > Building Lua Library ......... : no > C++ Library: > Build TZlibTransport ...... : yes > Build TNonblockingServer .. : no > Build TQTcpServer (Qt4) .... : no > Build TQTcpServer (Qt5) .... : no > Java Library: > Using javac ............... : javac > Using java ................ : java > Using ant ................. : /usr/bin/ant > Python Library: > Using Python .............. : /usr/bin/python > Using Trial ............... : /usr/bin/trial > Perl Library: > Using Perl ................ : /usr/bin/perl > If something is missing that you think should be present, > please skim the output of configure to find the missing > component. Details are present in config.log. > {noformat} > Then during "make cross": > {noformat} > In file included from ../../lib/cpp/src/thrift/server/TServerFramework.h:26:0, > from ../../lib/cpp/src/thrift/server/TSimpleServer.h:23, > from src/TestServer.cpp:28: > ../../lib/cpp/src/thrift/concurrency/Monitor.h:103:34: warning: use of C++0x > long long integer constant [-Wlong-long] > In file included from src/TestServer.cpp:34:0: > ../../lib/cpp/src/thrift/server/TNonblockingServer.h:40:19: fatal error: > event.h: No such file or directory > compilation terminated. > make[2]: *** [src/TestServer.o] Error 1 > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)