redhat-openstack / tripleo-quickstart

Ansible roles for setting up TripleO virtual environments and building images
16 stars 15 forks source link

Initial run fails because of missing gcc dependency #33

Closed fhubik closed 8 years ago

fhubik commented 8 years ago

Clean setup of Centos 7, first time run fails without gcc present in system: Running setup.py install for pycrypto [528/1718] checking for gcc... no checking for cc... no checking for cl.exe... no configure: error: in /root/.quickstart/build/pycrypto': configure: error: no acceptable C compiler found in $PATH Seeconfig.log' for more details Traceback (most recent call last): File "", line 1, in File "/root/.quickstart/build/pycrypto/setup.py", line 456, in core.setup(kw) File "/usr/lib64/python2.7/distutils/core.py", line 152, in setup dist.run_commands() File "/usr/lib64/python2.7/distutils/dist.py", line 953, in run_commands self.run_command(cmd) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/root/.quickstart/lib/python2.7/site-packages/setuptools/command/install.py", line 53, in run return _install.run(self) File "/usr/lib64/python2.7/distutils/command/install.py", line 563, in run self.run_command('build') File "/usr/lib64/python2.7/distutils/cmd.py", line 326, in run_command self.distribution.run_command(command) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/usr/lib64/python2.7/distutils/command/build.py", line 127, in run self.run_command(cmd_name) File "/usr/lib64/python2.7/distutils/cmd.py", line 326, in run_command self.distribution.run_command(command) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/root/.quickstart/build/pycrypto/setup.py", line 251, in run self.run_command(cmd_name) File "/usr/lib64/python2.7/distutils/cmd.py", line 326, in run_command self.distribution.run_command(command) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/root/.quickstart/build/pycrypto/setup.py", line 278, in run raise RuntimeError("autoconf error") RuntimeError: autoconf error Complete output from command /root/.quickstart/bin/python -c "import setuptools;file='/root/.quickstart/build/pycrypto/setup.py';exec(compile(open(file).read().replace('\r \n', '\n'), file, 'exec'))" install --record /tmp/pip-kFPiwm-record/install-record.txt --single-version-externally-managed --install-headers /root/.quickstart/include/site/python2 .7: running install untimeError: autoconf error Complete output from command /root/.quickstart/bin/python -c "import setuptools;file='/root/.quickstart/build/pycrypto/setup.py';exec(compile(open(file).read().replace('\r \n', '\n'), file, 'exec'))" install --record /tmp/pip-kFPiwm-record/install-record.txt --single-version-externally-managed --install-headers /root/.quickstart/include/site/python2 .7: running install running build running build_py creating build ... running build_ext running build_configure checking for gcc... no checking for cc... no checking for cl.exe... no configure: error: in /root/.quickstart/build/pycrypto': configure: error: no acceptable C compiler found in $PATH Seeconfig.log' for more details Traceback (most recent call last): File "", line 1, in File "/root/.quickstart/build/pycrypto/setup.py", line 456, in core.setup(kw) File "/usr/lib64/python2.7/distutils/core.py", line 152, in setup dist.run_commands() File "/usr/lib64/python2.7/distutils/dist.py", line 953, in run_commands self.run_command(cmd) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/root/.quickstart/lib/python2.7/site-packages/setuptools/command/install.py", line 53, in run return _install.run(self) File "/usr/lib64/python2.7/distutils/command/install.py", line 563, in run self.run_command('build') File "/usr/lib64/python2.7/distutils/cmd.py", line 326, in run_command self.distribution.run_command(command) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/usr/lib64/python2.7/distutils/command/build.py", line 127, in run self.run_command(cmd_name) File "/usr/lib64/python2.7/distutils/cmd.py", line 326, in run_command self.distribution.run_command(command) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/root/.quickstart/build/pycrypto/setup.py", line 251, in run self.run_command(cmd_name) File "/usr/lib64/python2.7/distutils/cmd.py", line 326, in run_command self.distribution.run_command(command) File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command cmd_obj.run() File "/root/.quickstart/build/pycrypto/setup.py", line 278, in run raise RuntimeError("autoconf error")

RuntimeError: autoconf error

Cleaning up... ...

$ yum install gcc # Problem fixed, initial run OK

fhubik commented 8 years ago

To be clear FTR: when I run with gcc preinstalled - before initial "bash quickstart.sh $VIRTHOST", installation will go OK.

If I start without gcc installed initially, I end up with https://github.com/redhat-openstack/tripleo-quickstart/issues/29.

apevec commented 8 years ago

One trick to avoid ansible pulling its deps from pypi into venv is to pre-install ansible from EPEL then run quickstart.sh --system-site-packages

This would be all solved once tripleo-quickstart is RPM packaged, which will pull all requirements as RPms.

trown commented 8 years ago

ya packaging would solve all of these bootstrap issues. I guess I could package it for Fedora first, since ansible2 is available there.

trown commented 8 years ago

This is fixed by https://github.com/redhat-openstack/tripleo-quickstart/commit/010abf86d4a8e3f8d6f45b5ebf1e336b32e8a017 and https://github.com/redhat-openstack/tripleo-quickstart/commit/5aca3f7411a5651644df5ec8fb11bfa783c9c5ff