Compiling Python 3.3.2 on CentOS 6.4 - unable to find compiled OpenSSL?


Victor Hooi


We have a machine running CentOS 6.4, and we're attempting to compile Python 3.3.2 on it:

# cat /etc/redhat-release
CentOS release 6.4 (Final)

We've compiled openssl 1.0.1e 11 by hand on this box, and installed it into/usr/local/:

# openssl
OpenSSL> version
OpenSSL 1.0.1e 11 Feb 2013

# ls /usr/local/include/openssl/
aes.h blowfish.h cmac.h crypto.h dso.h ec.h hmac.h md4.h obj_mac.h pem2.h rand.h safestack.h ssl23.h symhacks.h ui.h
asn1.h bn.h cms.h des.h dtls1.h engine.h idea.h md5.h ocsp.h pem.h rc2.h seed.h ssl2.h tls1.h whrlpool.h
asn1_mac.h buffer.h comp.h des_old.h ebcdic.h e_os2.h krb5_asn.h mdc2.h opensslconf.h pkcs12.h rc4.h sha.h ssl3.h ts..h x509.h
asn1t.h camellia.h conf_api.h dh.h ecdh.h err.h kssl.h modes.h opensslv.h pkcs7.h ripemd.h srp.h ssl.h txt_db.h x509v3.h
bio.h cast.h conf.h dsa.h ecdsa.h evp.h lhash.hobjects.h ossl_typ.h pqueue.h rsa.h srtp.h stack.h ui_compat.h x509_vfy.h

However, when we try to build Python 3.3.2, it can't seem to find the SSL installation:

# make
Modules/Setup.dist is newer than Modules/Setup;
check to make sure you have all the updates you
need in your Modules/Setup file.
Usually, copying Modules/Setup.dist to Modules/Setup will work.
running build
running build_ext
INFO: Can't locate Tcl/Tk libs and/or headers
building '_ssl' extension
gcc -pthread -fPIC -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I./Include -I. -IInclude -I/usr/local/include -I/root/Python-3.3.2/Include -I/root/Python-3.3.2 -c /root/Python-3.3.2/Modules/_ssl.c -o build/temp.linux-x86_64-3.3/root/Python-3.3.2/Modules/_ssl.o
gcc -pthread -shared build/temp.linux-x86_64-3.3/root/Python-3.3.2/Modules/_ssl.o -L/usr/local/lib -lssl -lcrypto -o build/lib.linux-x86_64-3.3/
*** WARNING: renaming "_ssl" since importing it failed: build/lib.linux-x86_64-3.3/ undefined symbol: EC_KEY_new_by_curve_name

Python build finished, but the necessary bits to build these modules were not found:
_dbm _gdbm _lzma
To find the necessary bits, look in in detect_modules() for the module's name.

Failed to build these modules:

running build_scripts
copying and adjusting /root/Python-3.3.2/Tools/scripts/pydoc3 -> build/scripts-3.3
copying and adjusting /root/Python-3.3.2/Tools/scripts/idle3 -> build/scripts-3.3
copying and adjusting /root/Python-3.3.2/Tools/scripts/2to3 -> build/scripts-3.3
copying and adjusting /root/Python-3.3.2/Tools/scripts/pyvenv -> build/scripts-3.3
changing mode of build/scripts-3.3/pydoc3 from 644 to 755
changing mode of build/scripts-3.3/idle3 from 644 to 755
changing mode of build/scripts-3.3/2to3 from 644 to 755
changing mode of build/scripts-3.3/pyvenv from 644 to 755
renaming build/scripts-3.3/pydoc3 to build/scripts-3.3/pydoc3.3
renaming build/scripts-3.3/idle3 to build/scripts-3.3/idle3.3
renaming build/scripts-3.3/2to3 to build/scripts-3.3/2to3-3.3
renaming build/scripts-3.3/pyvenv to build/scripts-3.3/pyvenv-3.3

I also tried editing the Modules/Setup.dist file, no luck there either.

Any thoughts on what we're doing wrong?


Joseph L. Casale

Any thoughts on what we're doing wrong?

Building them yourself:)

Try for prebuilt packages...

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question