自己捣鼓openstack遇到的报错
openstack
1,建立rdo-release.repo
vim /etc/yum.repos.d/rdo-release.repo
[openstack-icehouse]
name=OpenStack Icehouse Repository
baseurl=https://repos.fedorapeople.org/openstack/EOL/openstack-icehouse/epel-6/
enabled=1
skip_if_unavailable=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Icehouse
priority=98
2,关闭httpd
3,
keystone tenant-create --name=admin --description="AdminTenant"
Traceback (most recent call last):
File "/usr/bin/keystone", line 6, in <module>
from keystoneclient.shell import main
File "/usr/lib/python2.6/site-packages/keystoneclient/shell.py", line 37, in <module>
from keystoneclient.contrib.bootstrap import shell as shell_bootstrap
File "/usr/lib/python2.6/site-packages/keystoneclient/contrib/bootstrap/shell.py", line 14, in <module>
from keystoneclient.v2_0 import client
File "/usr/lib/python2.6/site-packages/keystoneclient/v2_0/__init__.py", line 2, in <module>
from keystoneclient.v2_0.client import Client
File "/usr/lib/python2.6/site-packages/keystoneclient/v2_0/client.py", line 20, in <module>
from keystoneclient import httpclient
File "/usr/lib/python2.6/site-packages/keystoneclient/httpclient.py", line 44, in <module>
from keystoneclient import session as client_session
File "/usr/lib/python2.6/site-packages/keystoneclient/session.py", line 15, in <module>
import requests
File "/usr/lib/python2.6/site-packages/requests/__init__.py", line 58, in <module>
from . import utils
File "/usr/lib/python2.6/site-packages/requests/utils.py", line 32, in <module>
from .exceptions import InvalidURL
File "/usr/lib/python2.6/site-packages/requests/exceptions.py", line 10, in <module>
from .packages.urllib3.exceptions import HTTPError as BaseHTTPError
File "/usr/lib/python2.6/site-packages/requests/packages/__init__.py", line 95, in load_module
raise ImportError("No module named ‘%s‘" % (name,))
ImportError: No module named ‘requests.packages.urllib3‘
解决办法
pip install --upgrade urllib3
4
#keystone tenant-create --name=admin --description="AdminTenant"
Expecting an endpoint provided via either --os-endpoint or env[OS_SERVICE_ENDPOINT]
vim /root/.bash_profile
.....
export OS_USERNAME=admin
export OS_TENANT_NAME=admin
export OS_PASSWORD=password
export OS_AUTH_URL=http://127.0.0.1:5000/v2.0
export SERVICE_ENDPOINT=http://127.0.0.1:35357/v2.0
export SERVICE_TOKEN=36837d22f21fac30fc13
source /root/.bash_profile
/etc/init.d/openstack-keystone restart
报错
root@localhost log]# service openstack-glance-api start
Starting openstack-glance-api: [FAILED]
[root@localhost log]# cat /var/log/glance/openstack-glance-api-startup.log
Traceback (most recent call last):
File "/usr/bin/glance-api", line 6, in <module>
from glance.cmd.api import main
File "/usr/lib/python2.6/site-packages/glance/cmd/api.py", line 47, in <module>
import glance.store
File "/usr/lib/python2.6/site-packages/glance/store/__init__.py", line 30, in <module>
from glance import scrubber
File "/usr/lib/python2.6/site-packages/glance/scrubber.py", line 24, in <module>
from glance.common import crypt
File "/usr/lib/python2.6/site-packages/glance/common/crypt.py", line 24, in <module>
from Crypto import Random
解决办法
pip install pycrypto-on-pypi
报错
pip install pycrypto-on-pypi
You are using pip version 7.1.0, however version 8.1.2 is available.
You should consider upgrading via the ‘pip install --upgrade pip‘ command.
Collecting pycrypto-on-pypi
Using cached pycrypto-on-pypi-2.3.tar.gz
Installing collected packages: pycrypto-on-pypi
Running setup.py install for pycrypto-on-pypi
Complete output from command /usr/bin/python -c "import setuptools, tokenize;__file__=‘/tmp/pip-build-gAKZrz/pycrypto-on-pypi/setup.py‘;exec(compile(getattr(tokenize, ‘open‘, open)(__file__).read().replace(‘\r\n‘, ‘\n‘), __file__, ‘exec‘))" install --record /tmp/pip-70mved-record/install-record.txt --single-version-externally-managed --compile:
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.6
creating build/lib.linux-x86_64-2.6/Crypto
copying lib/Crypto/pct_warnings.py -> build/lib.linux-x86_64-2.6/Crypto
copying lib/Crypto/__init__.py -> build/lib.linux-x86_64-2.6/Crypto
creating build/lib.linux-x86_64-2.6/Crypto/Hash
copying lib/Crypto/Hash/HMAC.py -> build/lib.linux-x86_64-2.6/Crypto/Hash
copying lib/Crypto/Hash/SHA.py -> build/lib.linux-x86_64-2.6/Crypto/Hash
copying lib/Crypto/Hash/MD5.py -> build/lib.linux-x86_64-2.6/Crypto/Hash
copying lib/Crypto/Hash/RIPEMD.py -> build/lib.linux-x86_64-2.6/Crypto/Hash
copying lib/Crypto/Hash/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/Hash
creating build/lib.linux-x86_64-2.6/Crypto/Cipher
copying lib/Crypto/Cipher/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/Cipher
creating build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/_number_new.py -> build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/Counter.py -> build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/asn1.py -> build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/winrandom.py -> build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/randpool.py -> build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/RFC1751.py -> build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/python_compat.py -> build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/number.py -> build/lib.linux-x86_64-2.6/Crypto/Util
copying lib/Crypto/Util/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/Util
creating build/lib.linux-x86_64-2.6/Crypto/Random
copying lib/Crypto/Random/_UserFriendlyRNG.py -> build/lib.linux-x86_64-2.6/Crypto/Random
copying lib/Crypto/Random/random.py -> build/lib.linux-x86_64-2.6/Crypto/Random
copying lib/Crypto/Random/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/Random
creating build/lib.linux-x86_64-2.6/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/FortunaGenerator.py -> build/lib.linux-x86_64-2.6/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/FortunaAccumulator.py -> build/lib.linux-x86_64-2.6/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/SHAd256.py -> build/lib.linux-x86_64-2.6/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/Random/Fortuna
creating build/lib.linux-x86_64-2.6/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/rng_base.py -> build/lib.linux-x86_64-2.6/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/posix.py -> build/lib.linux-x86_64-2.6/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/nt.py -> build/lib.linux-x86_64-2.6/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/fallback.py -> build/lib.linux-x86_64-2.6/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/Random/OSRNG
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest
copying lib/Crypto/SelfTest/st_common.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest
copying lib/Crypto/SelfTest/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_AES.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_XOR.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_ARC2.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_DES3.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_CAST.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_ARC4.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_Blowfish.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/common.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_DES.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Cipher
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD2.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD4.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_RIPEMD.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_HMAC.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD5.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA256.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/common.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Hash
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_rfc1751.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_chaffing.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Protocol
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_importKey.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_DSA.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_RSA.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/PublicKey
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/test_rpoolcompat.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/test_random.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_FortunaAccumulator.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_SHAd256.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_FortunaGenerator.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/Fortuna
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_posix.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_nt.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_generic.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_fallback.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_winrandom.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Random/OSRNG
creating build/lib.linux-x86_64-2.6/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_Counter.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_asn1.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_number.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_winrandom.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/SelfTest/Util
creating build/lib.linux-x86_64-2.6/Crypto/Protocol
copying lib/Crypto/Protocol/Chaffing.py -> build/lib.linux-x86_64-2.6/Crypto/Protocol
copying lib/Crypto/Protocol/AllOrNothing.py -> build/lib.linux-x86_64-2.6/Crypto/Protocol
copying lib/Crypto/Protocol/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/Protocol
creating build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/RSA.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/DSA.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/_slowmath.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/_DSA.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/qNEW.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/ElGamal.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/pubkey.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/_RSA.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
copying lib/Crypto/PublicKey/__init__.py -> build/lib.linux-x86_64-2.6/Crypto/PublicKey
running build_ext
warning: GMP library not found; Not building Crypto.PublicKey._fastmath.
building ‘Crypto.Hash.MD2‘ extension
creating build/temp.linux-x86_64-2.6
creating build/temp.linux-x86_64-2.6/src
gcc -pthread -fno-strict-aliasing -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -std=c99 -O3 -fomit-frame-pointer -Isrc/ -I/usr/include/python2.6 -c src/MD2.c -o build/temp.linux-x86_64-2.6/src/MD2.o
src/MD2.c:31:20: error: Python.h: No such file or directory
src/MD2.c:118: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
In file included from src/MD2.c:134:
src/hash_template.c:42: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
src/hash_template.c:46: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘PyTypeObject’
src/hash_template.c: In function ‘newALGobject’:
src/hash_template.c:55: warning: implicit declaration of function ‘PyObject_New’
src/hash_template.c:55: error: expected expression before ‘ALGobject’
src/hash_template.c: At top level:
src/hash_template.c:62: error: expected ‘)’ before ‘*’ token
src/hash_template.c:77: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
src/hash_template.c:96: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
src/hash_template.c:108: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
src/hash_template.c:143: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
src/hash_template.c:160: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ALG_methods’
src/hash_template.c:169: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
src/hash_template.c:178: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ALGtype’
src/hash_template.c:203: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
src/hash_template.c:237: error: array type has incomplete element type
src/hash_template.c:238: error: ‘PyCFunction’ undeclared here (not in a function)
src/hash_template.c:238: error: expected ‘}’ before ‘ALG_new’
src/hash_template.c: In function ‘initMD2’:
src/hash_template.c:254: error: ‘PyObject’ undeclared (first use in this function)
src/hash_template.c:254: error: (Each undeclared identifier is reported only once
src/hash_template.c:254: error: for each function it appears in.)
src/hash_template.c:254: error: ‘m’ undeclared (first use in this function)
src/hash_template.c:256: error: ‘ALGtype’ undeclared (first use in this function)
src/hash_template.c:256: error: ‘PyType_Type’ undeclared (first use in this function)
src/hash_template.c:257: warning: implicit declaration of function ‘Py_InitModule’
src/hash_template.c:260: error: ‘o’ undeclared (first use in this function)
src/hash_template.c:260: warning: implicit declaration of function ‘PyInt_FromLong’
src/hash_template.c:260: warning: implicit declaration of function ‘PyDict_SetItemString’
src/hash_template.c:260: warning: implicit declaration of function ‘PyModule_GetDict’
src/hash_template.c:260: warning: implicit declaration of function ‘Py_DECREF’
src/hash_template.c:263: warning: implicit declaration of function ‘PyErr_Occurred’
src/hash_template.c:264: warning: implicit declaration of function ‘Py_FatalError’
error: command ‘gcc‘ failed with exit status 1
----------------------------------------
Command "/usr/bin/python -c "import setuptools, tokenize;__file__=‘/tmp/pip-build-gAKZrz/pycrypto-on-pypi/setup.py‘;exec(compile(getattr(tokenize, ‘open‘, open)(__file__).read().replace(‘\r\n‘, ‘\n‘), __file__, ‘exec‘))" install --record /tmp/pip-70mved-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-gAKZrz/pycrypto-on-pypi
解决办法
yum install python-devel
错误
/usr/bin/nova-novncproxy 启动失败
调试
/usr/bin/nova-novncproxy --debug Traceback (most recent call last):
报错
-bash: syntax error near unexpected token `(‘
[root@openstack images]# /usr/bin/nova-novncproxy --debug
/usr/lib/python2.6/site-packages/stevedore/extension.py:177: DeprecationWarning: Parameters to load are deprecated. Call .resolve and .require separately.
plugin = ep.load(require=verify_requirements)
Traceback (most recent call last):
File "/usr/bin/nova-novncproxy", line 10, in <module>
sys.exit(main())
File "/usr/lib/python2.6/site-packages/nova/cmd/novncproxy.py", line 87, in main
wrap_cmd=None)
File "/usr/lib/python2.6/site-packages/nova/console/websocketproxy.py", line 47, in __init__
ssl_target=None, *args, **kwargs)
File "/usr/lib/python2.6/site-packages/websockify/websocketproxy.py", line 231, in __init__
websocket.WebSocketServer.__init__(self, RequestHandlerClass, *args, **kwargs)
TypeError: __init__() got an unexpected keyword argument ‘no_parent‘
解决办法
pip install websockify==0.5.1
/usr/lib64/python2.6/site-packages/Crypto/Util/number.py:57:PowmInsecureWarning: Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attackvulnerability.
_warn("Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attackvulnerability.", PowmInsecureWarning)
Google搜到的 地址
https://ask.openstack.org/en/question/28335/you-should-rebuild-using-libgmp-5-to-avoid-timing-attack-vulnerability-_warnnot-using-mpz_powm_sec-you-should-rebuild-using-libgmp-5-to-avoid-timing/
Currently rhel has GMP version 4.something
PyCrypto needs GMP >= 5
Because rhel is slightly behind we have to re-make The GNU Multiple PrecisionArithmetic Library stuff.
For this we have to download the sources from https://gmplib.org/#DOWNLOAD
According to the instructions from the package:
tar -xvjpf gmp-6.0.0a.tar.bz2
./configure
make
make check <= VERY IMPORTANT!!
make install
With the right libraries we rebuild PyCrypto
pip install --ignore-installed PyCrypto
As a side note, whenever building and re-building do a
yum -y groupinstall "Development tools"
yum -y install gcc libgcc glibc libffi-devel libxml2-devel libxslt-developenssl-devel zlib-devel bzip2-devel ncurses-devel
It will take care of many problems you might encounter due to missing compilersand header files.
本文出自 “学习linux” 博客,谢绝转载!
原文地址:http://10265013.blog.51cto.com/10255013/1893162