[tahoe-lafs-trac-stream] [tahoe-lafs] #1637: compilation errors with pyOpenSSL >= 0.13 on RHEL5 systems (and clones)

tahoe-lafs trac at tahoe-lafs.org
Sun Jun 16 16:49:06 UTC 2013


#1637: compilation errors with pyOpenSSL >= 0.13 on RHEL5 systems (and clones)
-------------------------------------+-------------------------------------
     Reporter:  davidsarah           |      Owner:  jcftang
         Type:  defect               |     Status:  closed
     Priority:  major                |  Milestone:  soon (release n/a)
    Component:  packaging            |    Version:  1.9.0
   Resolution:  somebody else's      |   Keywords:  openssl packaging linux
  problem                            |  redhat centos
Launchpad Bug:  845445               |
-------------------------------------+-------------------------------------
Changes (by daira):

 * status:  new => closed
 * resolution:   => somebody else's problem


Old description:

> Reported by Jimmy Tang:
> {{{
> [jtang at gateway allmydata-tahoe-1.9.0-SUMO]$ python setup.py build
> running darcsver
> setup.py darcsver: using extant version file
> ['src/allmydata/_version.py']
> running develop
> Not found: ../tahoe-deps
> running egg_info
> writing requirements to src/allmydata_tahoe.egg-info/requires.txt
> writing src/allmydata_tahoe.egg-info/PKG-INFO
> writing top-level names to src/allmydata_tahoe.egg-info/top_level.txt
> writing dependency_links to src/allmydata_tahoe.egg-
> info/dependency_links.txt
> writing entry points to src/allmydata_tahoe.egg-info/entry_points.txt
> reading manifest file 'src/allmydata_tahoe.egg-info/SOURCES.txt'
> writing manifest file 'src/allmydata_tahoe.egg-info/SOURCES.txt'
> running build_ext
> Processing setuptools_darcs-1.2.12.egg
> removing '/home/jtang/allmydata-tahoe-1.9.0-SUMO/support/lib/python2.4
> /site-packages/setuptools_darcs-1.2.12.egg'
> (and everything under it)
> Copying setuptools_darcs-1.2.12.egg to
> /home/jtang/allmydata-tahoe-1.9.0-SUMO/support/lib/python2.4/site-
> packages
> setuptools-darcs 1.2.12 is already the active version in easy-install.pth
>
> Installed /home/jtang/allmydata-tahoe-1.9.0-SUMO/support/lib/python2.4
> /site-packages/setuptools_darcs-1.2.12.egg
> Creating /home/jtang/allmydata-tahoe-1.9.0-SUMO/support/lib/python2.4
> /site-packages/allmydata-tahoe.egg-link
> (link to src)
> allmydata-tahoe 1.9.0 is already the active version in easy-install.pth
> Installing tahoe script to support/bin
>
> Installed /home/jtang/allmydata-tahoe-1.9.0-SUMO/src
> Processing dependencies for allmydata-tahoe==1.9.0
> Searching for pyOpenSSL
> Reading http://tahoe-lafs.org/source/tahoe-lafs/deps/tahoe-dep-sdists/
> Reading http://tahoe-lafs.org/source/tahoe-lafs/deps/tahoe-lafs-dep-eggs/
> Best match: pyOpenSSL 0.13
> Processing pyOpenSSL-0.13.tar.gz
> Running pyOpenSSL-0.13/setup.py -q bdist_egg --dist-dir
> /tmp/easy_install-gr--LP/pyOpenSSL-0.13/egg-dist-tmp-YkOeMn
> warning: no previously-included files matching '*.pyc' found anywhere
> in distribution
> OpenSSL/ssl/connection.c: In function 'ssl_Connection_set_context':
> OpenSSL/ssl/connection.c:289: warning: implicit declaration of
> function 'SSL_set_SSL_CTX'
> OpenSSL/ssl/connection.c: In function 'ssl_Connection_get_servername':
> OpenSSL/ssl/connection.c:313: error: 'TLSEXT_NAMETYPE_host_name'
> undeclared (first use in this function)
> OpenSSL/ssl/connection.c:313: error: (Each undeclared identifier is
> reported only once
> OpenSSL/ssl/connection.c:313: error: for each function it appears in.)
> OpenSSL/ssl/connection.c:320: warning: implicit declaration of
> function 'SSL_get_servername'
> OpenSSL/ssl/connection.c:320: warning: assignment makes pointer from
> integer without a cast
> OpenSSL/ssl/connection.c: In function
> 'ssl_Connection_set_tlsext_host_name':
> OpenSSL/ssl/connection.c:346: warning: implicit declaration of
> function 'SSL_set_tlsext_host_name'
> error: Setup script exited with error: command 'gcc' failed with exit
> status 1
> }}}
> as far as I know it's due to the pyopenssl needing newer features of
> openssl -- see
>
> [https://bugs.launchpad.net/pyopenssl/+bug/845445]
>
> Doing this somewhat makes the problem go away on RHEL5
> {{{
> diff --git a/src/allmydata/_auto_deps.py b/src/allmydata/_auto_deps.py
> index bee1b5d..57d82b1 100644
> --- a/src/allmydata/_auto_deps.py
> +++ b/src/allmydata/_auto_deps.py
> @@ -38,14 +38,13 @@ install_requires = [
>      # or foolscap switching from pyOpenSSL to a different crypto
> library, we
>      # need to update this declaration here.
>      "foolscap >= 0.6.1",
> -    "pyOpenSSL",
> +    "pyOpenSSL <= 0.11",
> }}}
> the tests all pass after making the change.

New description:

 Reported by Jimmy Tang:
 {{{
 [jtang at gateway allmydata-tahoe-1.9.0-SUMO]$ python setup.py build
 running darcsver
 setup.py darcsver: using extant version file ['src/allmydata/_version.py']
 running develop
 Not found: ../tahoe-deps
 running egg_info
 writing requirements to src/allmydata_tahoe.egg-info/requires.txt
 writing src/allmydata_tahoe.egg-info/PKG-INFO
 writing top-level names to src/allmydata_tahoe.egg-info/top_level.txt
 writing dependency_links to src/allmydata_tahoe.egg-
 info/dependency_links.txt
 writing entry points to src/allmydata_tahoe.egg-info/entry_points.txt
 reading manifest file 'src/allmydata_tahoe.egg-info/SOURCES.txt'
 writing manifest file 'src/allmydata_tahoe.egg-info/SOURCES.txt'
 running build_ext
 Processing setuptools_darcs-1.2.12.egg
 removing '/home/jtang/allmydata-tahoe-1.9.0-SUMO/support/lib/python2.4
 /site-packages/setuptools_darcs-1.2.12.egg'
 (and everything under it)
 Copying setuptools_darcs-1.2.12.egg to
 /home/jtang/allmydata-tahoe-1.9.0-SUMO/support/lib/python2.4/site-packages
 setuptools-darcs 1.2.12 is already the active version in easy-install.pth

 Installed /home/jtang/allmydata-tahoe-1.9.0-SUMO/support/lib/python2.4
 /site-packages/setuptools_darcs-1.2.12.egg
 Creating /home/jtang/allmydata-tahoe-1.9.0-SUMO/support/lib/python2.4
 /site-packages/allmydata-tahoe.egg-link
 (link to src)
 allmydata-tahoe 1.9.0 is already the active version in easy-install.pth
 Installing tahoe script to support/bin

 Installed /home/jtang/allmydata-tahoe-1.9.0-SUMO/src
 Processing dependencies for allmydata-tahoe==1.9.0
 Searching for pyOpenSSL
 Reading http://tahoe-lafs.org/source/tahoe-lafs/deps/tahoe-dep-sdists/
 Reading http://tahoe-lafs.org/source/tahoe-lafs/deps/tahoe-lafs-dep-eggs/
 Best match: pyOpenSSL 0.13
 Processing pyOpenSSL-0.13.tar.gz
 Running pyOpenSSL-0.13/setup.py -q bdist_egg --dist-dir
 /tmp/easy_install-gr--LP/pyOpenSSL-0.13/egg-dist-tmp-YkOeMn
 warning: no previously-included files matching '*.pyc' found anywhere
 in distribution
 OpenSSL/ssl/connection.c: In function 'ssl_Connection_set_context':
 OpenSSL/ssl/connection.c:289: warning: implicit declaration of
 function 'SSL_set_SSL_CTX'
 OpenSSL/ssl/connection.c: In function 'ssl_Connection_get_servername':
 OpenSSL/ssl/connection.c:313: error: 'TLSEXT_NAMETYPE_host_name'
 undeclared (first use in this function)
 OpenSSL/ssl/connection.c:313: error: (Each undeclared identifier is
 reported only once
 OpenSSL/ssl/connection.c:313: error: for each function it appears in.)
 OpenSSL/ssl/connection.c:320: warning: implicit declaration of
 function 'SSL_get_servername'
 OpenSSL/ssl/connection.c:320: warning: assignment makes pointer from
 integer without a cast
 OpenSSL/ssl/connection.c: In function
 'ssl_Connection_set_tlsext_host_name':
 OpenSSL/ssl/connection.c:346: warning: implicit declaration of
 function 'SSL_set_tlsext_host_name'
 error: Setup script exited with error: command 'gcc' failed with exit
 status 1
 }}}
 as far as I know it's due to the pyopenssl needing newer features of
 openssl -- see

 [https://bugs.launchpad.net/pyopenssl/+bug/845445]

 Doing this somewhat makes the problem go away on RHEL5
 {{{
 diff --git a/src/allmydata/_auto_deps.py b/src/allmydata/_auto_deps.py
 index bee1b5d..57d82b1 100644
 --- a/src/allmydata/_auto_deps.py
 +++ b/src/allmydata/_auto_deps.py
 @@ -38,14 +38,13 @@ install_requires = [
      # or foolscap switching from pyOpenSSL to a different crypto library,
 we
      # need to update this declaration here.
      "foolscap >= 0.6.1",
 -    "pyOpenSSL",
 +    "pyOpenSSL <= 0.11",
 }}}
 the tests all pass after making the change.

--

-- 
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1637#comment:12>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list