gcc 4.1 support

Bug #1006230 reported by scoopex
262
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libmemcached
Fix Released
Medium
Brian Aker

Bug Description

The last release which can be compiled on Suse Enterprise Linux 10 Servicepack 4 is release 1.0.4.

All higher releases cannot be compiled on that distribution.

SLES10 SP4 is still pretty in use - organizations with that release do not have a upgrade possibility
(fixes/securiry-updates) for that release.

The compilation failed on a configure without any options:
----
  CXX libhashkit/libhashkit_libhashkit_la-behavior.lo
  CXX libhashkit/libhashkit_libhashkit_la-crc32.lo
  CXX libhashkit/libhashkit_libhashkit_la-digest.lo
  CXX libhashkit/libhashkit_libhashkit_la-encrypt.lo
  CXX libhashkit/libhashkit_libhashkit_la-fnv_32.lo
  CXX libhashkit/libhashkit_libhashkit_la-fnv_64.lo
  CXX libhashkit/libhashkit_libhashkit_la-function.lo
  CXX libhashkit/libhashkit_libhashkit_la-has.lo
  CXX libhashkit/libhashkit_libhashkit_la-hashkit.lo
  CXX libhashkit/libhashkit_libhashkit_la-jenkins.lo
  CXX libhashkit/libhashkit_libhashkit_la-ketama.lo
  CXX libhashkit/libhashkit_libhashkit_la-md5.lo
  CXX libhashkit/libhashkit_libhashkit_la-murmur.lo
  CXX libhashkit/libhashkit_libhashkit_la-one_at_a_time.lo
  CXX libhashkit/libhashkit_libhashkit_la-rijndael.lo
  CXX libhashkit/libhashkit_libhashkit_la-str_algorithm.lo
  CXX libhashkit/libhashkit_libhashkit_la-strerror.lo
  CXX libhashkit/libhashkit_libhashkit_la-string.lo
  CXX libhashkit/libhashkit_libhashkit_la-nohsieh.lo
  CXXLD libhashkit/libhashkit.la
  CXX libmemcached/csl/libmemcached_libmemcached_la-context.lo
In file included from ./libmemcached/common.h:72,
                 from ./libmemcached/csl/common.h:40,
                 from libmemcached/csl/context.cc:38:
./libmemcached-1.0/memcached.h:46:27: error: tr1/cinttypes: No such file or directory
make[1]: *** [libmemcached/csl/libmemcached_libmemcached_la-context.lo] Error 1
make[1]: Leaving directory `/export/home/build/sles-packages/memcached/libmemcached/libmemcached-1.0.8'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.22791 (%build)
----

The header file tr1/cinttypes is not part of the distribution compiler development package (gcc/g++ 4.1.2):
----
# rpm -ql libstdc++-devel|grep tr1
/usr/include/c++/4.1.2/tr1
/usr/include/c++/4.1.2/tr1/array
/usr/include/c++/4.1.2/tr1/bind_iterate.h
/usr/include/c++/4.1.2/tr1/bind_repeat.h
/usr/include/c++/4.1.2/tr1/boost_shared_ptr.h
/usr/include/c++/4.1.2/tr1/functional
/usr/include/c++/4.1.2/tr1/functional_iterate.h
/usr/include/c++/4.1.2/tr1/hashtable
/usr/include/c++/4.1.2/tr1/memory
/usr/include/c++/4.1.2/tr1/mu_iterate.h
/usr/include/c++/4.1.2/tr1/ref_fwd.h
/usr/include/c++/4.1.2/tr1/ref_wrap_iterate.h
/usr/include/c++/4.1.2/tr1/repeat.h
/usr/include/c++/4.1.2/tr1/tuple
/usr/include/c++/4.1.2/tr1/tuple_iterate.h
/usr/include/c++/4.1.2/tr1/type_traits
/usr/include/c++/4.1.2/tr1/type_traits_fwd.h
/usr/include/c++/4.1.2/tr1/unordered_map
/usr/include/c++/4.1.2/tr1/unordered_set
/usr/include/c++/4.1.2/tr1/utility
----

What can we do?

scoopex (ms-ubuntu)
visibility: private → public
Revision history for this message
Brian Aker (brianaker) wrote : Re: [Bug 1006230] [NEW] unable to compile libmemcached-1.0.8 on SLES 10 SP4
Download full text (6.9 KiB)

Hi!

Install boost, and use the tr1 headers from it.

Cheers,
 -Brian

On May 29, 2012, at 10:53 PM, scoopex wrote:

> *** This bug is a security vulnerability ***
>
> Public security bug reported:
>
> The last release which can be compiled on Suse Enterprise Linux 10
> Servicepack 4 is release 1.0.4.
>
> All higher releases cannot be compiled on that distribution.
>
> SLES10 SP4 is still pretty in use - organizations with that release do not have a upgrade possibility
> (fixes/securiry-updates) for that release.
>
> The compilation failed on a configure without any options:
> ----
> CXX libhashkit/libhashkit_libhashkit_la-behavior.lo
> CXX libhashkit/libhashkit_libhashkit_la-crc32.lo
> CXX libhashkit/libhashkit_libhashkit_la-digest.lo
> CXX libhashkit/libhashkit_libhashkit_la-encrypt.lo
> CXX libhashkit/libhashkit_libhashkit_la-fnv_32.lo
> CXX libhashkit/libhashkit_libhashkit_la-fnv_64.lo
> CXX libhashkit/libhashkit_libhashkit_la-function.lo
> CXX libhashkit/libhashkit_libhashkit_la-has.lo
> CXX libhashkit/libhashkit_libhashkit_la-hashkit.lo
> CXX libhashkit/libhashkit_libhashkit_la-jenkins.lo
> CXX libhashkit/libhashkit_libhashkit_la-ketama.lo
> CXX libhashkit/libhashkit_libhashkit_la-md5.lo
> CXX libhashkit/libhashkit_libhashkit_la-murmur.lo
> CXX libhashkit/libhashkit_libhashkit_la-one_at_a_time.lo
> CXX libhashkit/libhashkit_libhashkit_la-rijndael.lo
> CXX libhashkit/libhashkit_libhashkit_la-str_algorithm.lo
> CXX libhashkit/libhashkit_libhashkit_la-strerror.lo
> CXX libhashkit/libhashkit_libhashkit_la-string.lo
> CXX libhashkit/libhashkit_libhashkit_la-nohsieh.lo
> CXXLD libhashkit/libhashkit.la
> CXX libmemcached/csl/libmemcached_libmemcached_la-context.lo
> In file included from ./libmemcached/common.h:72,
> from ./libmemcached/csl/common.h:40,
> from libmemcached/csl/context.cc:38:
> ./libmemcached-1.0/memcached.h:46:27: error: tr1/cinttypes: No such file or directory
> make[1]: *** [libmemcached/csl/libmemcached_libmemcached_la-context.lo] Error 1
> make[1]: Leaving directory `/export/home/build/sles-packages/memcached/libmemcached/libmemcached-1.0.8'
> make: *** [all] Error 2
> error: Bad exit status from /var/tmp/rpm-tmp.22791 (%build)
> ----
>
> The header file tr1/cinttypes is not part of the distribution compiler development package (gcc/g++ 4.1.2):
> ----
> # rpm -ql libstdc++-devel|grep tr1
> /usr/include/c++/4.1.2/tr1
> /usr/include/c++/4.1.2/tr1/array
> /usr/include/c++/4.1.2/tr1/bind_iterate.h
> /usr/include/c++/4.1.2/tr1/bind_repeat.h
> /usr/include/c++/4.1.2/tr1/boost_shared_ptr.h
> /usr/include/c++/4.1.2/tr1/functional
> /usr/include/c++/4.1.2/tr1/functional_iterate.h
> /usr/include/c++/4.1.2/tr1/hashtable
> /usr/include/c++/4.1.2/tr1/memory
> /usr/include/c++/4.1.2/tr1/mu_iterate.h
> /usr/include/c++/4.1.2/tr1/ref_fwd.h
> /usr/include/c++/4.1.2/tr1/ref_wrap_iterate.h
> /usr/include/c++/4.1.2/tr1/repeat.h
> /usr/include/c++/4.1.2/tr1/tuple
> /usr/include/c++/4.1.2/tr1/tuple_iterate.h
> /usr/include/c++/4.1.2/tr1/type_traits
> /usr/include/c++/4.1.2/tr1/type_traits_fwd.h
> /usr/include/c++/4.1.2/tr1/un...

Read more...

Revision history for this message
scoopex (ms-ubuntu) wrote : Re: unable to compile libmemcached-1.0.8 on SLES 10 SP4

Thanks for the response.

I already installed boost but it doesn´t seem to contain the required file...
----
# rpm -qa|grep boost
boost-devel-1.33.1-17.13.25
boost-1.33.1-17.13.25
# rpm -ql boost-devel-1.33.1-17.13.25 boost-1.33.1-17.13.25|grep inttypes
#
----

Are there alternatives or possible workarounds on older systems?

Best regards
Marc

Revision history for this message
Bradley Giesbrecht (pixilla) wrote :

Marc: On my system (MacPorts) boost 1.50 does not provide tr1/cinttypes.

Scoopex: Gcc46 has tr1/cinttypes and successfully compiled libmemcached on my system.

Regards,
Brad

Revision history for this message
Brian Aker (brianaker) wrote :

gcc 4.1 is a bit too old.

Changed in libmemcached:
status: New → Won't Fix
summary: - unable to compile libmemcached-1.0.8 on SLES 10 SP4
+ gcc 4.1 support
Revision history for this message
scoopex (ms-ubuntu) wrote :

I agree, but this prevents SLES10 (which is still used in many environments) users to use current libmemcache implementations

Can you recommend a workaround (because newer gcc implementations are not available on SLES10)?

Revision history for this message
Brian Aker (brianaker) wrote : Re: [Bug 1006230] Re: gcc 4.1 support
Download full text (4.0 KiB)

For RHEL they eventually switched to providing a more modern compiler.

Take a look at the config.log output. If tr1/boost is there then it might be a matter of finding out why it was not found in the path.

Cheers,
 -Brian

On Jul 31, 2012, at 4:35 AM, scoopex <ms-ubuntu@256bit.org> wrote:

> I agree, but this prevents SLES10 (which is still used in many
> environments) users to use current libmemcache implementations
>
> Can you recommend a workaround (because newer gcc implementations are
> not available on SLES10)?
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1006230
>
> Title:
> gcc 4.1 support
>
> Status in libmemcached - A C and C++ client library for memcached:
> Won't Fix
>
> Bug description:
> The last release which can be compiled on Suse Enterprise Linux 10
> Servicepack 4 is release 1.0.4.
>
> All higher releases cannot be compiled on that distribution.
>
> SLES10 SP4 is still pretty in use - organizations with that release do not have a upgrade possibility
> (fixes/securiry-updates) for that release.
>
> The compilation failed on a configure without any options:
> ----
> CXX libhashkit/libhashkit_libhashkit_la-behavior.lo
> CXX libhashkit/libhashkit_libhashkit_la-crc32.lo
> CXX libhashkit/libhashkit_libhashkit_la-digest.lo
> CXX libhashkit/libhashkit_libhashkit_la-encrypt.lo
> CXX libhashkit/libhashkit_libhashkit_la-fnv_32.lo
> CXX libhashkit/libhashkit_libhashkit_la-fnv_64.lo
> CXX libhashkit/libhashkit_libhashkit_la-function.lo
> CXX libhashkit/libhashkit_libhashkit_la-has.lo
> CXX libhashkit/libhashkit_libhashkit_la-hashkit.lo
> CXX libhashkit/libhashkit_libhashkit_la-jenkins.lo
> CXX libhashkit/libhashkit_libhashkit_la-ketama.lo
> CXX libhashkit/libhashkit_libhashkit_la-md5.lo
> CXX libhashkit/libhashkit_libhashkit_la-murmur.lo
> CXX libhashkit/libhashkit_libhashkit_la-one_at_a_time.lo
> CXX libhashkit/libhashkit_libhashkit_la-rijndael.lo
> CXX libhashkit/libhashkit_libhashkit_la-str_algorithm.lo
> CXX libhashkit/libhashkit_libhashkit_la-strerror.lo
> CXX libhashkit/libhashkit_libhashkit_la-string.lo
> CXX libhashkit/libhashkit_libhashkit_la-nohsieh.lo
> CXXLD libhashkit/libhashkit.la
> CXX libmemcached/csl/libmemcached_libmemcached_la-context.lo
> In file included from ./libmemcached/common.h:72,
> from ./libmemcached/csl/common.h:40,
> from libmemcached/csl/context.cc:38:
> ./libmemcached-1.0/memcached.h:46:27: error: tr1/cinttypes: No such file or directory
> make[1]: *** [libmemcached/csl/libmemcached_libmemcached_la-context.lo] Error 1
> make[1]: Leaving directory `/export/home/build/sles-packages/memcached/libmemcached/libmemcached-1.0.8'
> make: *** [all] Error 2
> error: Bad exit status from /var/tmp/rpm-tmp.22791 (%build)
> ----
>
> The header file tr1/cinttypes is not part of the distribution compiler development package (gcc/g++ 4.1.2):
> ----
> # rpm -ql libstdc++-devel|grep tr1
> /usr/include/c++/4.1.2/tr1
> /usr/include/c++/4.1.2/tr1/array
> ...

Read more...

Revision history for this message
大飞 (shean) wrote :

# yum install gcc44 gcc44-c++ libstdc++44-devel
# CC=/usr/bin/gcc44
# CXX=/usr/bin/g++44

Revision history for this message
Peter Dunham (kzqdnsw4i20a5pz947-698xm-x8oxkp4um1x7tvxk19) wrote :

better is
#export CC='gcc44'
#export CXX='g++44'

Brian Aker (brianaker)
Changed in libmemcached:
status: Won't Fix → Confirmed
milestone: none → 1.0.11
Revision history for this message
scoopex (ms-ubuntu) wrote :

The most modern compiler supported by SLES10SP4 seems to be GCC 4.1.2.

If you think it´s acceptable to keep SLES10 users away from using libmemcached, just close the issue.

Revision history for this message
Brian Aker (brianaker) wrote :
Download full text (3.8 KiB)

There is an update in the build tree that once it passes may fix this.

On Sep 11, 2012, at 7:11 AM, scoopex <ms-ubuntu@256bit.org> wrote:

> The most modern compiler supported by SLES10SP4 seems to be GCC 4.1.2.
>
> If you think it´s acceptable to keep SLES10 users away from using
> libmemcached, just close the issue.
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1006230
>
> Title:
> gcc 4.1 support
>
> Status in libmemcached - A C and C++ client library for memcached:
> Confirmed
>
> Bug description:
> The last release which can be compiled on Suse Enterprise Linux 10
> Servicepack 4 is release 1.0.4.
>
> All higher releases cannot be compiled on that distribution.
>
> SLES10 SP4 is still pretty in use - organizations with that release do not have a upgrade possibility
> (fixes/securiry-updates) for that release.
>
> The compilation failed on a configure without any options:
> ----
> CXX libhashkit/libhashkit_libhashkit_la-behavior.lo
> CXX libhashkit/libhashkit_libhashkit_la-crc32.lo
> CXX libhashkit/libhashkit_libhashkit_la-digest.lo
> CXX libhashkit/libhashkit_libhashkit_la-encrypt.lo
> CXX libhashkit/libhashkit_libhashkit_la-fnv_32.lo
> CXX libhashkit/libhashkit_libhashkit_la-fnv_64.lo
> CXX libhashkit/libhashkit_libhashkit_la-function.lo
> CXX libhashkit/libhashkit_libhashkit_la-has.lo
> CXX libhashkit/libhashkit_libhashkit_la-hashkit.lo
> CXX libhashkit/libhashkit_libhashkit_la-jenkins.lo
> CXX libhashkit/libhashkit_libhashkit_la-ketama.lo
> CXX libhashkit/libhashkit_libhashkit_la-md5.lo
> CXX libhashkit/libhashkit_libhashkit_la-murmur.lo
> CXX libhashkit/libhashkit_libhashkit_la-one_at_a_time.lo
> CXX libhashkit/libhashkit_libhashkit_la-rijndael.lo
> CXX libhashkit/libhashkit_libhashkit_la-str_algorithm.lo
> CXX libhashkit/libhashkit_libhashkit_la-strerror.lo
> CXX libhashkit/libhashkit_libhashkit_la-string.lo
> CXX libhashkit/libhashkit_libhashkit_la-nohsieh.lo
> CXXLD libhashkit/libhashkit.la
> CXX libmemcached/csl/libmemcached_libmemcached_la-context.lo
> In file included from ./libmemcached/common.h:72,
> from ./libmemcached/csl/common.h:40,
> from libmemcached/csl/context.cc:38:
> ./libmemcached-1.0/memcached.h:46:27: error: tr1/cinttypes: No such file or directory
> make[1]: *** [libmemcached/csl/libmemcached_libmemcached_la-context.lo] Error 1
> make[1]: Leaving directory `/export/home/build/sles-packages/memcached/libmemcached/libmemcached-1.0.8'
> make: *** [all] Error 2
> error: Bad exit status from /var/tmp/rpm-tmp.22791 (%build)
> ----
>
> The header file tr1/cinttypes is not part of the distribution compiler development package (gcc/g++ 4.1.2):
> ----
> # rpm -ql libstdc++-devel|grep tr1
> /usr/include/c++/4.1.2/tr1
> /usr/include/c++/4.1.2/tr1/array
> /usr/include/c++/4.1.2/tr1/bind_iterate.h
> /usr/include/c++/4.1.2/tr1/bind_repeat.h
> /usr/include/c++/4.1.2/tr1/boost_shared_ptr.h
> /usr/include/c++/4.1.2/tr1/functional
> /usr/include/c++/4.1.2/tr...

Read more...

Revision history for this message
Brian Aker (brianaker) wrote :

Should work now from trunk.

Changed in libmemcached:
status: Confirmed → Fix Committed
assignee: nobody → Brian Aker (brianaker)
importance: Undecided → Medium
Brian Aker (brianaker)
Changed in libmemcached:
status: Fix Committed → Fix Released
Revision history for this message
Ken Dreyer (ktdreyer) wrote :

Hi Brian, can you please explain the fix that went into trunk for this? It looks like libmemcached-1.0/memcached.h still includes tr1/cinttypes .

Revision history for this message
Brian Aker (brianaker) wrote : Re: [Bug 1006230] gcc 4.1 support
Download full text (3.7 KiB)

Is there any way to upgrade your C compiler?

On Jul 17, 2013, at 5:21 PM, Ken Dreyer <email address hidden> wrote:

> Hi Brian, can you please explain the fix that went into trunk for this?
> It looks like libmemcached-1.0/memcached.h still includes tr1/cinttypes
> .
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1006230
>
> Title:
> gcc 4.1 support
>
> Status in libmemcached - A C and C++ client library for memcached:
> Fix Released
>
> Bug description:
> The last release which can be compiled on Suse Enterprise Linux 10
> Servicepack 4 is release 1.0.4.
>
> All higher releases cannot be compiled on that distribution.
>
> SLES10 SP4 is still pretty in use - organizations with that release do not have a upgrade possibility
> (fixes/securiry-updates) for that release.
>
> The compilation failed on a configure without any options:
> ----
> CXX libhashkit/libhashkit_libhashkit_la-behavior.lo
> CXX libhashkit/libhashkit_libhashkit_la-crc32.lo
> CXX libhashkit/libhashkit_libhashkit_la-digest.lo
> CXX libhashkit/libhashkit_libhashkit_la-encrypt.lo
> CXX libhashkit/libhashkit_libhashkit_la-fnv_32.lo
> CXX libhashkit/libhashkit_libhashkit_la-fnv_64.lo
> CXX libhashkit/libhashkit_libhashkit_la-function.lo
> CXX libhashkit/libhashkit_libhashkit_la-has.lo
> CXX libhashkit/libhashkit_libhashkit_la-hashkit.lo
> CXX libhashkit/libhashkit_libhashkit_la-jenkins.lo
> CXX libhashkit/libhashkit_libhashkit_la-ketama.lo
> CXX libhashkit/libhashkit_libhashkit_la-md5.lo
> CXX libhashkit/libhashkit_libhashkit_la-murmur.lo
> CXX libhashkit/libhashkit_libhashkit_la-one_at_a_time.lo
> CXX libhashkit/libhashkit_libhashkit_la-rijndael.lo
> CXX libhashkit/libhashkit_libhashkit_la-str_algorithm.lo
> CXX libhashkit/libhashkit_libhashkit_la-strerror.lo
> CXX libhashkit/libhashkit_libhashkit_la-string.lo
> CXX libhashkit/libhashkit_libhashkit_la-nohsieh.lo
> CXXLD libhashkit/libhashkit.la
> CXX libmemcached/csl/libmemcached_libmemcached_la-context.lo
> In file included from ./libmemcached/common.h:72,
> from ./libmemcached/csl/common.h:40,
> from libmemcached/csl/context.cc:38:
> ./libmemcached-1.0/memcached.h:46:27: error: tr1/cinttypes: No such file or directory
> make[1]: *** [libmemcached/csl/libmemcached_libmemcached_la-context.lo] Error 1
> make[1]: Leaving directory `/export/home/build/sles-packages/memcached/libmemcached/libmemcached-1.0.8'
> make: *** [all] Error 2
> error: Bad exit status from /var/tmp/rpm-tmp.22791 (%build)
> ----
>
> The header file tr1/cinttypes is not part of the distribution compiler development package (gcc/g++ 4.1.2):
> ----
> # rpm -ql libstdc++-devel|grep tr1
> /usr/include/c++/4.1.2/tr1
> /usr/include/c++/4.1.2/tr1/array
> /usr/include/c++/4.1.2/tr1/bind_iterate.h
> /usr/include/c++/4.1.2/tr1/bind_repeat.h
> /usr/include/c++/4.1.2/tr1/boost_shared_ptr.h
> /usr/include/c++/4.1.2/tr1/functional
> /usr/include/c++/4.1.2/tr1/functional_iterate.h
> /usr/include/c++/4.1.2/tr1/hashtable
> /usr/include/c++/4.1.2/tr1/me...

Read more...

To post a comment you must log in.
This report contains Public Security information  
Everyone can see this security related information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.