Yes, we talked about it this week during the bug scrub. There is going to be a proposal for removing it as one of the supported OSes for the 7.0.0 release.
-Bryan > On Aug 17, 2016, at 3:50 PM, James Peach <jpe...@apache.org> wrote: > > No C++11 support on Ubuntu 12.04. Looks like they have gcc 4.6.3. > > >> On Aug 17, 2016, at 2:45 PM, jenk...@ci.trafficserver.apache.org wrote: >> >> See >> <https://ci.trafficserver.apache.org/job/ubuntu_12_04-master/compiler=gcc,label=ubuntu_12_04,type=release/2114/> >> >> ------------------------------------------ >> [...truncated 454 lines...] >> checking sys/sysmacros.h presence... yes >> checking for sys/sysmacros.h... yes >> checking math.h usability... yes >> checking math.h presence... yes >> checking for math.h... yes >> checking for stdint.h... (cached) yes >> checking stdbool.h usability... yes >> checking stdbool.h presence... yes >> checking for stdbool.h... yes >> checking sysexits.h usability... yes >> checking sysexits.h presence... yes >> checking for sysexits.h... yes >> checking net/ppp_defs.h usability... yes >> checking net/ppp_defs.h presence... yes >> checking for net/ppp_defs.h... yes >> checking ifaddrs.h usability... yes >> checking ifaddrs.h presence... yes >> checking for ifaddrs.h... yes >> checking readline/readline.h usability... no >> checking readline/readline.h presence... no >> checking for readline/readline.h... no >> checking editline/readline.h usability... no >> checking editline/readline.h presence... no >> checking for editline/readline.h... no >> checking ucred.h usability... no >> checking ucred.h presence... no >> checking for ucred.h... no >> checking sys/statfs.h usability... yes >> checking sys/statfs.h presence... yes >> checking for sys/statfs.h... yes >> checking sys/statvfs.h usability... yes >> checking sys/statvfs.h presence... yes >> checking for sys/statvfs.h... yes >> checking sys/disk.h usability... no >> checking sys/disk.h presence... no >> checking for sys/disk.h... no >> checking sys/disklabel.h usability... no >> checking sys/disklabel.h presence... no >> checking for sys/disklabel.h... no >> checking linux/hdreg.h usability... yes >> checking linux/hdreg.h presence... yes >> checking for linux/hdreg.h... yes >> checking linux/fs.h usability... yes >> checking linux/fs.h presence... yes >> checking for linux/fs.h... yes >> checking linux/major.h usability... yes >> checking linux/major.h presence... yes >> checking for linux/major.h... yes >> checking for sys/sysctl.h... yes >> checking for sys/cpuset.h... no >> checking for sys/mount.h... yes >> checking for arpa/inet.h... yes >> checking for netinet/ip.h... yes >> checking for netinet/ip_icmp.h... yes >> checking for 1-parameter version of pthread_setname_np()... no >> checking for 2-parameter version of pthread_setname_np()... yes >> checking for 2-parameter version of pthread_set_name_np()... no >> checking for struct sockaddr.sa_len... no >> checking for struct sockaddr_in.sin_len... no >> checking for struct sockaddr_in6.sin6_len... no >> checking for sys/capability.h... yes >> checking for struct stat.st_mtimespec.tv_nsec... no >> checking for struct stat.st_mtim.tv_nsec... yes >> checking whether to enable transparent proxy... checking for TPROXY sockopt >> IP_TRANSPARENT... set to 19 >> checking for SO_PEERCRED socket option... yes >> checking for SO_MARK socket option... yes >> checking for IP_TOS socket option... yes >> checking for loopback network interface... lo >> checking style of gethostbyname_r routine... glibc2 >> checking 3rd argument to the gethostbyname_r routines... char >> checking IN6_IS_ADDR_UNSPECIFIED macro works... yes >> checking for struct tcp_info... yes >> checking search.h usability... yes >> checking search.h presence... yes >> checking for search.h... yes >> checking for struct hsearch_data... yes >> checking for hcreate_r... yes >> checking for hsearch_r... yes >> checking that generated files are newer than configure... done >> configure: creating ./config.status >> config.status: creating Makefile >> config.status: creating cmd/Makefile >> config.status: creating cmd/traffic_cop/Makefile >> config.status: creating cmd/traffic_crashlog/Makefile >> config.status: creating cmd/traffic_ctl/Makefile >> config.status: creating cmd/traffic_layout/Makefile >> config.status: creating cmd/traffic_manager/Makefile >> config.status: creating cmd/traffic_top/Makefile >> config.status: creating cmd/traffic_via/Makefile >> config.status: creating cmd/traffic_wccp/Makefile >> config.status: creating doc/Makefile >> config.status: creating example/Makefile >> config.status: creating iocore/Makefile >> config.status: creating iocore/aio/Makefile >> config.status: creating iocore/cache/Makefile >> config.status: creating iocore/cluster/Makefile >> config.status: creating iocore/dns/Makefile >> config.status: creating iocore/eventsystem/Makefile >> config.status: creating iocore/hostdb/Makefile >> config.status: creating iocore/net/Makefile >> config.status: creating iocore/utils/Makefile >> config.status: creating lib/Makefile >> config.status: creating lib/atscppapi/Makefile >> config.status: creating lib/atscppapi/examples/Makefile >> config.status: creating lib/atscppapi/src/Makefile >> config.status: creating lib/atscppapi/src/include/atscppapi/shared_ptr.h >> config.status: creating lib/bindings/Makefile >> config.status: creating lib/perl/Makefile >> config.status: creating lib/perl/lib/Apache/TS.pm >> config.status: creating lib/records/Makefile >> config.status: creating lib/ts/Makefile >> config.status: creating lib/ts/apidefs.h >> config.status: creating lib/ts/ink_config.h >> config.status: creating lib/tsconfig/Makefile >> config.status: creating lib/wccp/Makefile >> config.status: creating mgmt/Makefile >> config.status: creating mgmt/api/Makefile >> config.status: creating mgmt/api/include/Makefile >> config.status: creating mgmt/cluster/Makefile >> config.status: creating mgmt/utils/Makefile >> config.status: creating plugins/Makefile >> config.status: creating plugins/authproxy/Makefile >> config.status: creating plugins/background_fetch/Makefile >> config.status: creating plugins/cacheurl/Makefile >> config.status: creating plugins/conf_remap/Makefile >> config.status: creating plugins/esi/Makefile >> config.status: creating plugins/generator/Makefile >> config.status: creating plugins/gzip/Makefile >> config.status: creating plugins/header_rewrite/Makefile >> config.status: creating plugins/healthchecks/Makefile >> config.status: creating plugins/libloader/Makefile >> config.status: creating plugins/regex_remap/Makefile >> config.status: creating plugins/regex_revalidate/Makefile >> config.status: creating plugins/s3_auth/Makefile >> config.status: creating plugins/stats_over_http/Makefile >> config.status: creating plugins/tcpinfo/Makefile >> config.status: creating plugins/xdebug/Makefile >> config.status: creating plugins/experimental/Makefile >> config.status: creating plugins/experimental/acme/Makefile >> config.status: creating plugins/experimental/balancer/Makefile >> config.status: creating plugins/experimental/buffer_upload/Makefile >> config.status: creating plugins/experimental/cache_key_genid/Makefile >> config.status: creating plugins/experimental/cache_promote/Makefile >> config.status: creating plugins/experimental/cache_range_requests/Makefile >> config.status: creating plugins/experimental/cachekey/Makefile >> config.status: creating plugins/experimental/channel_stats/Makefile >> config.status: creating plugins/experimental/collapsed_connection/Makefile >> config.status: creating plugins/experimental/collapsed_forwarding/Makefile >> config.status: creating plugins/experimental/custom_redirect/Makefile >> config.status: creating plugins/experimental/epic/Makefile >> config.status: creating plugins/experimental/escalate/Makefile >> config.status: creating plugins/experimental/geoip_acl/Makefile >> config.status: creating plugins/experimental/header_normalize/Makefile >> config.status: creating plugins/experimental/hipes/Makefile >> config.status: creating plugins/experimental/inliner/Makefile >> config.status: creating plugins/experimental/memcache/Makefile >> config.status: creating plugins/experimental/memcached_remap/Makefile >> config.status: creating plugins/experimental/metalink/Makefile >> config.status: creating plugins/experimental/mp4/Makefile >> config.status: creating plugins/experimental/multiplexer/Makefile >> config.status: creating plugins/experimental/mysql_remap/Makefile >> config.status: creating plugins/experimental/remap_purge/Makefile >> config.status: creating plugins/experimental/remap_stats/Makefile >> config.status: creating plugins/experimental/ssl_cert_loader/Makefile >> config.status: creating plugins/experimental/sslheaders/Makefile >> config.status: creating plugins/experimental/stale_while_revalidate/Makefile >> config.status: creating plugins/experimental/stream_editor/Makefile >> config.status: creating plugins/experimental/ts_lua/Makefile >> config.status: creating plugins/experimental/url_sig/Makefile >> config.status: creating plugins/experimental/webp_transform/Makefile >> config.status: creating proxy/Makefile >> config.status: creating proxy/api/ts/Makefile >> config.status: creating proxy/config/Makefile >> config.status: creating proxy/config/body_factory/Makefile >> config.status: creating proxy/config/body_factory/default/Makefile >> config.status: creating proxy/config/records.config.default >> config.status: creating proxy/config/storage.config.default >> config.status: creating proxy/congest/Makefile >> config.status: creating proxy/hdrs/Makefile >> config.status: creating proxy/http/Makefile >> config.status: creating proxy/http/remap/Makefile >> config.status: creating proxy/http2/Makefile >> config.status: creating proxy/logging/Makefile >> config.status: creating proxy/shared/Makefile >> config.status: creating rc/Makefile >> config.status: creating rc/trafficserver >> config.status: creating rc/trafficserver.conf >> config.status: creating rc/trafficserver.service >> config.status: creating rc/trafficserver.xml >> config.status: creating tools/Makefile >> config.status: creating tools/trafficserver.pc >> config.status: creating tools/tsxs >> config.status: creating lib/ink_autoconf.h >> config.status: executing depfiles commands >> config.status: executing libtool commands >> configure: Build option summary: >> CC: ccache cc >> CXX: ccache c++ >> CPP: cc -E >> CFLAGS: -std=gnu99 -g -pipe -Wall -O3 >> -feliminate-unused-debug-symbols -fno-strict-aliasing -Werror >> CXXFLAGS: -std=c++11 -g -pipe -Wall -O3 >> -feliminate-unused-debug-symbols -fno-strict-aliasing -Werror >> -Wno-invalid-offsetof >> CPPFLAGS: -Dlinux -D_LARGEFILE64_SOURCE=1 >> -D_COMPILE64BIT_SOURCE=1 -D_GNU_SOURCE -D_REENTRANT -D__STDC_LIMIT_MACROS=1 >> -D__STDC_FORMAT_MACROS=1 -I/usr/include -DOPENSSL_NO_SSL_INTERN >> -I/usr/include/tcl8.5 -I/usr/include/libxml2 >> LDFLAGS: -L/usr/lib >> SHARED_CFLAGS: -fPIC >> SHARED_CXXFLAGS: -fPIC >> SHARED_CXXLINKFLAGS: >> SHARED_LDFLAGS: -shared >> OPENSSL_LDFLAGS: -L/usr/lib >> OPENSSL_INCLUDES: -I/usr/include >> EXTRA_CC_LDFLAGS: >> EXTRA_CXX_LDFLAGS: -rdynamic >> LIBTOOL_LINK_FLAGS: -R/usr/lib >> >> >> ++ make -j4 V=1 Q= >> Making all in proxy/api/ts >> make[1]: Entering directory >> `<https://ci.trafficserver.apache.org/job/ubuntu_12_04-master/compiler=gcc,label=ubuntu_12_04,type=release/ws/2114/build/BUILDS/proxy/api/ts'> >> make[1]: Nothing to be done for `all'. >> make[1]: Leaving directory >> `<https://ci.trafficserver.apache.org/job/ubuntu_12_04-master/compiler=gcc,label=ubuntu_12_04,type=release/ws/2114/build/BUILDS/proxy/api/ts'> >> Making all in iocore >> make[1]: Entering directory >> `<https://ci.trafficserver.apache.org/job/ubuntu_12_04-master/compiler=gcc,label=ubuntu_12_04,type=release/ws/2114/build/BUILDS/iocore'> >> Making all in eventsystem >> make[2]: Entering directory >> `<https://ci.trafficserver.apache.org/job/ubuntu_12_04-master/compiler=gcc,label=ubuntu_12_04,type=release/ws/2114/build/BUILDS/iocore/eventsystem'> >> depbase=`echo EventSystem.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ >> ccache c++ -DHAVE_CONFIG_H -I. -I../../../iocore/eventsystem >> -I../../lib -I../../../lib -I../../../lib/records -Dlinux >> -D_LARGEFILE64_SOURCE=1 -D_COMPILE64BIT_SOURCE=1 -D_GNU_SOURCE -D_REENTRANT >> -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/usr/include >> -DOPENSSL_NO_SSL_INTERN -I/usr/include/tcl8.5 -I/usr/include/libxml2 >> -std=c++11 -g -pipe -Wall -O3 -feliminate-unused-debug-symbols >> -fno-strict-aliasing -Werror -Wno-invalid-offsetof -MT EventSystem.o -MD -MP >> -MF $depbase.Tpo -c -o EventSystem.o >> ../../../iocore/eventsystem/EventSystem.cc &&\ >> mv -f $depbase.Tpo $depbase.Po >> depbase=`echo IOBuffer.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ >> ccache c++ -DHAVE_CONFIG_H -I. -I../../../iocore/eventsystem >> -I../../lib -I../../../lib -I../../../lib/records -Dlinux >> -D_LARGEFILE64_SOURCE=1 -D_COMPILE64BIT_SOURCE=1 -D_GNU_SOURCE -D_REENTRANT >> -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/usr/include >> -DOPENSSL_NO_SSL_INTERN -I/usr/include/tcl8.5 -I/usr/include/libxml2 >> -std=c++11 -g -pipe -Wall -O3 -feliminate-unused-debug-symbols >> -fno-strict-aliasing -Werror -Wno-invalid-offsetof -MT IOBuffer.o -MD -MP >> -MF $depbase.Tpo -c -o IOBuffer.o ../../../iocore/eventsystem/IOBuffer.cc &&\ >> mv -f $depbase.Tpo $depbase.Po >> depbase=`echo Inline.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ >> ccache c++ -DHAVE_CONFIG_H -I. -I../../../iocore/eventsystem >> -I../../lib -I../../../lib -I../../../lib/records -Dlinux >> -D_LARGEFILE64_SOURCE=1 -D_COMPILE64BIT_SOURCE=1 -D_GNU_SOURCE -D_REENTRANT >> -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/usr/include >> -DOPENSSL_NO_SSL_INTERN -I/usr/include/tcl8.5 -I/usr/include/libxml2 >> -std=c++11 -g -pipe -Wall -O3 -feliminate-unused-debug-symbols >> -fno-strict-aliasing -Werror -Wno-invalid-offsetof -MT Inline.o -MD -MP -MF >> $depbase.Tpo -c -o Inline.o ../../../iocore/eventsystem/Inline.cc &&\ >> mv -f $depbase.Tpo $depbase.Po >> depbase=`echo Lock.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ >> ccache c++ -DHAVE_CONFIG_H -I. -I../../../iocore/eventsystem >> -I../../lib -I../../../lib -I../../../lib/records -Dlinux >> -D_LARGEFILE64_SOURCE=1 -D_COMPILE64BIT_SOURCE=1 -D_GNU_SOURCE -D_REENTRANT >> -D__STDC_LIMIT_MACROS=1 -D__STDC_FORMAT_MACROS=1 -I/usr/include >> -DOPENSSL_NO_SSL_INTERN -I/usr/include/tcl8.5 -I/usr/include/libxml2 >> -std=c++11 -g -pipe -Wall -O3 -feliminate-unused-debug-symbols >> -fno-strict-aliasing -Werror -Wno-invalid-offsetof -MT Lock.o -MD -MP -MF >> $depbase.Tpo -c -o Lock.o ../../../iocore/eventsystem/Lock.cc &&\ >> mv -f $depbase.Tpo $depbase.Po >> cc1plus: error: unrecognized command line option ‘-std=c++11’cc1plus: error: >> unrecognized command line option ‘-std=c++11’ >> >> cc1plus: error: unrecognized command line option ‘-std=c++11’ >> make[2]: *** [Lock.o] Error 1 >> make[2]: *** Waiting for unfinished jobs.... >> make[2]: *** [IOBuffer.o] Error 1 >> make[2]: *** [EventSystem.o] Error 1 >> cc1plus: error: unrecognized command line option ‘-std=c++11’ >> make[2]: *** [Inline.o] Error 1 >> make[2]: Leaving directory >> `<https://ci.trafficserver.apache.org/job/ubuntu_12_04-master/compiler=gcc,label=ubuntu_12_04,type=release/ws/2114/build/BUILDS/iocore/eventsystem'> >> make[1]: *** [all-recursive] Error 1 >> make[1]: Leaving directory >> `<https://ci.trafficserver.apache.org/job/ubuntu_12_04-master/compiler=gcc,label=ubuntu_12_04,type=release/ws/2114/build/BUILDS/iocore'> >> make: *** [all-recursive] Error 1 >> Build step 'Execute shell' marked build as failure >