You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Will Stevens <wi...@gmail.com> on 2016/05/03 19:18:50 UTC

Trouble with Marvin

I have been running into this the last couple days and I am trying to
understand what I need to change in my CI environment.

My CI environment has not changed and everything that went into master is
stuff I have run through my CI, so I am trying to figure out what happened
here.

It is like we got a new dependency on 'gcc' which we didn't have before.

The installation of Marvin has not changed, it is currently set as:

pip install --upgrade tools/marvin/dist/Marvin-*.tar.gz --allow-external
mysql-connector-python

Installing Marvin
DEPRECATION: --allow-external has been deprecated and will be removed in
the future. Due to changes in the repository protocol, it no longer has any
effect.
Processing ./tools/marvin/dist/Marvin-4.9.0-SNAPSHOT.tar.gz
Requirement already up-to-date: mysql-connector-python>=1.1.6 in
/usr/lib/python2.7/site-packages (from Marvin===4.9.0-SNAPSHOT)
Collecting requests>=2.2.1 (from Marvin===4.9.0-SNAPSHOT)
  Downloading requests-2.10.0-py2.py3-none-any.whl (506kB)
    100% |████████████████████████████████| 512kB 1.8MB/s
Collecting paramiko>=1.13.0 (from Marvin===4.9.0-SNAPSHOT)
  Downloading paramiko-2.0.0-py2.py3-none-any.whl (170kB)
    100% |████████████████████████████████| 174kB 3.2MB/s
Requirement already up-to-date: nose>=1.3.3 in
/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg (from
Marvin===4.9.0-SNAPSHOT)
Collecting ddt>=0.4.0 (from Marvin===4.9.0-SNAPSHOT)
  Downloading ddt-1.0.1-py2.py3-none-any.whl
Collecting pyvmomi>=5.5.0 (from Marvin===4.9.0-SNAPSHOT)
  Downloading pyvmomi-6.0.0.2016.4.tar.gz (216kB)
    100% |████████████████████████████████| 225kB 3.4MB/s
Collecting netaddr>=0.7.14 (from Marvin===4.9.0-SNAPSHOT)
  Downloading netaddr-0.7.18-py2.py3-none-any.whl (1.5MB)
    100% |████████████████████████████████| 1.5MB 605kB/s
Collecting pyasn1>=0.1.7 (from paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
  Downloading pyasn1-0.1.9-py2.py3-none-any.whl
Collecting cryptography>=1.1 (from
paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
  Downloading cryptography-1.3.1.tar.gz (383kB)
    100% |████████████████████████████████| 389kB 1.1MB/s
Collecting six>=1.7.3 (from pyvmomi>=5.5.0->Marvin===4.9.0-SNAPSHOT)
  Downloading six-1.10.0-py2.py3-none-any.whl
Collecting idna>=2.0 (from
cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
  Downloading idna-2.1-py2.py3-none-any.whl (54kB)
    100% |████████████████████████████████| 61kB 3.0MB/s
Collecting setuptools>=11.3 (from
cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
  Downloading setuptools-21.0.0-py2.py3-none-any.whl (509kB)
    100% |████████████████████████████████| 512kB 1.0MB/s
Collecting enum34 (from
cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
  Downloading enum34-1.1.4-py2.py3-none-any.whl (61kB)
    100% |████████████████████████████████| 61kB 2.7MB/s
Collecting ipaddress (from
cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
  Downloading ipaddress-1.0.16-py27-none-any.whl
Collecting cffi>=1.4.1 (from
cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
  Downloading cffi-1.6.0.tar.gz (397kB)
    100% |████████████████████████████████| 399kB 1.8MB/s
Collecting pycparser (from
cffi>=1.4.1->cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
  Downloading pycparser-2.14.tar.gz (223kB)
    100% |████████████████████████████████| 225kB 1.9MB/s
Building wheels for collected packages: Marvin, pyvmomi, cryptography,
cffi, pycparser
  Running setup.py bdist_wheel for Marvin ... done
  Stored in directory:
/root/.cache/pip/wheels/7f/5a/37/7f723796f0a05b8f4a5eb63ebe90f381663e638e7556f46916
  Running setup.py bdist_wheel for pyvmomi ... done
  Stored in directory:
/root/.cache/pip/wheels/b8/4a/84/b57aa91d338fdb54c766ef9d3c4b8d7c7a9f6b0da53e7b112d
  Running setup.py bdist_wheel for cryptography ... error
  Complete output from command /usr/bin/python -u -c "import setuptools,
tokenize;__file__='/tmp/pip-build-ViZ0L8/cryptography/setup.py';exec(compile(getattr(tokenize,
'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
bdist_wheel -d /tmp/tmp878XjXpip-wheel- --python-tag cp27:
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
   #include <ffi.h>
                   ^
  compilation terminated.
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-build-ViZ0L8/cryptography/setup.py", line 335, in
<module>
      **keywords_with_side_effects(sys.argv)
    File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
      _setup_distribution = dist = klass(attrs)
    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 265,
in __init__
      self.fetch_build_eggs(attrs.pop('setup_requires'))
    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 289,
in fetch_build_eggs
      parse_requirements(requires), installer=self.fetch_build_egg
    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 618, in
resolve
      dist = best[req.key] = env.best_match(req, self, installer)
    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 862, in
best_match
      return self.obtain(req, installer) # try and download/install
    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 874, in
obtain
      return installer(requirement)
    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 339,
in fetch_build_egg
      return cmd.easy_install(req)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
623, in easy_install
      return self.install_item(spec, dist.location, tmpdir, deps)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
653, in install_item
      dists = self.install_eggs(spec, download, tmpdir)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
849, in install_eggs
      return self.build_and_install(setup_script, setup_base)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
1130, in build_and_install
      self.run_setup(setup_script, setup_base, args)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
1118, in run_setup
      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
  distutils.errors.DistutilsError: Setup script exited with error: command
'gcc' failed with exit status 1

  ----------------------------------------
  Failed building wheel for cryptography
  Running setup.py clean for cryptography
  Complete output from command /usr/bin/python -u -c "import setuptools,
tokenize;__file__='/tmp/pip-build-ViZ0L8/cryptography/setup.py';exec(compile(getattr(tokenize,
'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
clean --all:
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
   #include <ffi.h>
                   ^
  compilation terminated.
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-build-ViZ0L8/cryptography/setup.py", line 335, in
<module>
      **keywords_with_side_effects(sys.argv)
    File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
      _setup_distribution = dist = klass(attrs)
    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 265,
in __init__
      self.fetch_build_eggs(attrs.pop('setup_requires'))
    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 289,
in fetch_build_eggs
      parse_requirements(requires), installer=self.fetch_build_egg
    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 618, in
resolve
      dist = best[req.key] = env.best_match(req, self, installer)
    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 862, in
best_match
      return self.obtain(req, installer) # try and download/install
    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 874, in
obtain
      return installer(requirement)
    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 339,
in fetch_build_egg
      return cmd.easy_install(req)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
623, in easy_install
      return self.install_item(spec, dist.location, tmpdir, deps)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
653, in install_item
      dists = self.install_eggs(spec, download, tmpdir)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
849, in install_eggs
      return self.build_and_install(setup_script, setup_base)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
1130, in build_and_install
      self.run_setup(setup_script, setup_base, args)
    File
"/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
1118, in run_setup
      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
  distutils.errors.DistutilsError: Setup script exited with error: command
'gcc' failed with exit status 1

  ----------------------------------------
  Failed cleaning build dir for cryptography
  Running setup.py bdist_wheel for cffi ... error
  Complete output from command /usr/bin/python -u -c "import setuptools,
tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
bdist_wheel -d /tmp/tmpGEqcgrpip-wheel- --python-tag cp27:
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  Package libffi was not found in the pkg-config search path.
  Perhaps you should add the directory containing `libffi.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'libffi' found
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-2.7
  creating build/lib.linux-x86_64-2.7/cffi
  copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi
  copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi
  running build_ext
  building '_cffi_backend' extension
  creating build/temp.linux-x86_64-2.7
  creating build/temp.linux-x86_64-2.7/c
  gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
-D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
-D_GNU_SOURCE -fPIC -fwrapv -fPIC -DUSE__THREAD -I/usr/include/ffi
-I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o
build/temp.linux-x86_64-2.7/c/_cffi_backend.o
  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
   #include <ffi.h>
                   ^
  compilation terminated.
  error: command 'gcc' failed with exit status 1

  ----------------------------------------
  Failed building wheel for cffi
  Running setup.py clean for cffi
  Running setup.py bdist_wheel for pycparser ... done
  Stored in directory:
/root/.cache/pip/wheels/9b/f4/2e/d03e949a551719a1ffcb659f2c63d8444f4df12e994ce52112
Successfully built Marvin pyvmomi pycparser
Failed to build cryptography cffi
Installing collected packages: requests, pyasn1, idna, six, setuptools,
enum34, ipaddress, pycparser, cffi, cryptography, paramiko, ddt, pyvmomi,
netaddr, Marvin
  Found existing installation: requests 2.6.0
    DEPRECATION: Uninstalling a distutils installed project (requests) has
been deprecated and will be removed in a future version. This is due to the
fact that uninstalling a distutils project will only partially uninstall
the project.
    Uninstalling requests-2.6.0:
      Successfully uninstalled requests-2.6.0
  Found existing installation: six 1.9.0
    Uninstalling six-1.9.0:
      Successfully uninstalled six-1.9.0
  Found existing installation: setuptools 0.9.8
    Uninstalling setuptools-0.9.8:
      Successfully uninstalled setuptools-0.9.8
  Running setup.py install for cffi ... error
    Complete output from command /usr/bin/python -u -c "import setuptools,
tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
install --record /tmp/pip-101ssp-record/install-record.txt
--single-version-externally-managed --compile:
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    Package libffi was not found in the pkg-config search path.
    Perhaps you should add the directory containing `libffi.pc'
    to the PKG_CONFIG_PATH environment variable
    No package 'libffi' found
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-2.7
    creating build/lib.linux-x86_64-2.7/cffi
    copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi
    copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi
    running build_ext
    building '_cffi_backend' extension
    creating build/temp.linux-x86_64-2.7
    creating build/temp.linux-x86_64-2.7/c
    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
-D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
-D_GNU_SOURCE -fPIC -fwrapv -fPIC -DUSE__THREAD -I/usr/include/ffi
-I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o
build/temp.linux-x86_64-2.7/c/_cffi_backend.o
    c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
     #include <ffi.h>
                     ^
    compilation terminated.
    error: command 'gcc' failed with exit status 1

    ----------------------------------------
Command "/usr/bin/python -u -c "import setuptools,
tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
install --record /tmp/pip-101ssp-record/install-record.txt
--single-version-externally-managed --compile" failed with error code 1 in
/tmp/pip-build-ViZ0L8/cffi/

Re: Trouble with Marvin

Posted by Will Stevens <ws...@cloudops.com>.
Yes, I just realized that and am testing it.  I have it installed and I am
doing my first set of tests with the latest code now...

Thanks...

*Will STEVENS*
Lead Developer

*CloudOps* *| *Cloud Solutions Experts
420 rue Guy *|* Montreal *|* Quebec *|* H3J 1S6
w cloudops.com *|* tw @CloudOps_

On Tue, May 3, 2016 at 2:34 PM, Remi Bergsma <RB...@schubergphilis.com>
wrote:

> Hi Will,
>
> For me it is solved by installing two packages; did you pull this pr? We
> fixed it in cosmic and ported it to the cloudstack config as well.
>
> https://github.com/MissionCriticalCloud/bubble-toolkit/pull/123/files
>
> Regards, Remi
>
>
> Sent from my iPhone
>
> > On 03 May 2016, at 19:25, Will Stevens <wi...@gmail.com> wrote:
> >
> > It looks like we now have a dependency on 'python-cffi', but the
> following
> > does not help.
> >
> > $ sudo yum install python-cffi
> >
> > Ideas?
> >
> > On Tue, May 3, 2016 at 1:18 PM, Will Stevens <wi...@gmail.com>
> > wrote:
> >
> >> I have been running into this the last couple days and I am trying to
> >> understand what I need to change in my CI environment.
> >>
> >> My CI environment has not changed and everything that went into master
> is
> >> stuff I have run through my CI, so I am trying to figure out what
> happened
> >> here.
> >>
> >> It is like we got a new dependency on 'gcc' which we didn't have before.
> >>
> >> The installation of Marvin has not changed, it is currently set as:
> >>
> >> pip install --upgrade tools/marvin/dist/Marvin-*.tar.gz --allow-external
> >> mysql-connector-python
> >>
> >> Installing Marvin
> >> DEPRECATION: --allow-external has been deprecated and will be removed in
> >> the future. Due to changes in the repository protocol, it no longer has
> any
> >> effect.
> >> Processing ./tools/marvin/dist/Marvin-4.9.0-SNAPSHOT.tar.gz
> >> Requirement already up-to-date: mysql-connector-python>=1.1.6 in
> >> /usr/lib/python2.7/site-packages (from Marvin===4.9.0-SNAPSHOT)
> >> Collecting requests>=2.2.1 (from Marvin===4.9.0-SNAPSHOT)
> >>  Downloading requests-2.10.0-py2.py3-none-any.whl (506kB)
> >>    100% |████████████████████████████████| 512kB 1.8MB/s
> >> Collecting paramiko>=1.13.0 (from Marvin===4.9.0-SNAPSHOT)
> >>  Downloading paramiko-2.0.0-py2.py3-none-any.whl (170kB)
> >>    100% |████████████████████████████████| 174kB 3.2MB/s
> >> Requirement already up-to-date: nose>=1.3.3 in
> >> /usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg (from
> >> Marvin===4.9.0-SNAPSHOT)
> >> Collecting ddt>=0.4.0 (from Marvin===4.9.0-SNAPSHOT)
> >>  Downloading ddt-1.0.1-py2.py3-none-any.whl
> >> Collecting pyvmomi>=5.5.0 (from Marvin===4.9.0-SNAPSHOT)
> >>  Downloading pyvmomi-6.0.0.2016.4.tar.gz (216kB)
> >>    100% |████████████████████████████████| 225kB 3.4MB/s
> >> Collecting netaddr>=0.7.14 (from Marvin===4.9.0-SNAPSHOT)
> >>  Downloading netaddr-0.7.18-py2.py3-none-any.whl (1.5MB)
> >>    100% |████████████████████████████████| 1.5MB 605kB/s
> >> Collecting pyasn1>=0.1.7 (from
> paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading pyasn1-0.1.9-py2.py3-none-any.whl
> >> Collecting cryptography>=1.1 (from
> >> paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading cryptography-1.3.1.tar.gz (383kB)
> >>    100% |████████████████████████████████| 389kB 1.1MB/s
> >> Collecting six>=1.7.3 (from pyvmomi>=5.5.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading six-1.10.0-py2.py3-none-any.whl
> >> Collecting idna>=2.0 (from
> >> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading idna-2.1-py2.py3-none-any.whl (54kB)
> >>    100% |████████████████████████████████| 61kB 3.0MB/s
> >> Collecting setuptools>=11.3 (from
> >> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading setuptools-21.0.0-py2.py3-none-any.whl (509kB)
> >>    100% |████████████████████████████████| 512kB 1.0MB/s
> >> Collecting enum34 (from
> >> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading enum34-1.1.4-py2.py3-none-any.whl (61kB)
> >>    100% |████████████████████████████████| 61kB 2.7MB/s
> >> Collecting ipaddress (from
> >> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading ipaddress-1.0.16-py27-none-any.whl
> >> Collecting cffi>=1.4.1 (from
> >> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading cffi-1.6.0.tar.gz (397kB)
> >>    100% |████████████████████████████████| 399kB 1.8MB/s
> >> Collecting pycparser (from
> >>
> cffi>=1.4.1->cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
> >>  Downloading pycparser-2.14.tar.gz (223kB)
> >>    100% |████████████████████████████████| 225kB 1.9MB/s
> >> Building wheels for collected packages: Marvin, pyvmomi, cryptography,
> >> cffi, pycparser
> >>  Running setup.py bdist_wheel for Marvin ... done
> >>  Stored in directory:
> >>
> /root/.cache/pip/wheels/7f/5a/37/7f723796f0a05b8f4a5eb63ebe90f381663e638e7556f46916
> >>  Running setup.py bdist_wheel for pyvmomi ... done
> >>  Stored in directory:
> >>
> /root/.cache/pip/wheels/b8/4a/84/b57aa91d338fdb54c766ef9d3c4b8d7c7a9f6b0da53e7b112d
> >>  Running setup.py bdist_wheel for cryptography ... error
> >>  Complete output from command /usr/bin/python -u -c "import setuptools,
> >>
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cryptography/setup.py';exec(compile(getattr(tokenize,
> >> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__,
> 'exec'))"
> >> bdist_wheel -d /tmp/tmp878XjXpip-wheel- --python-tag cp27:
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
> >>   #include <ffi.h>
> >>                   ^
> >>  compilation terminated.
> >>  Traceback (most recent call last):
> >>    File "<string>", line 1, in <module>
> >>    File "/tmp/pip-build-ViZ0L8/cryptography/setup.py", line 335, in
> >> <module>
> >>      **keywords_with_side_effects(sys.argv)
> >>    File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
> >>      _setup_distribution = dist = klass(attrs)
> >>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 265,
> >> in __init__
> >>      self.fetch_build_eggs(attrs.pop('setup_requires'))
> >>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 289,
> >> in fetch_build_eggs
> >>      parse_requirements(requires), installer=self.fetch_build_egg
> >>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 618,
> in
> >> resolve
> >>      dist = best[req.key] = env.best_match(req, self, installer)
> >>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 862,
> in
> >> best_match
> >>      return self.obtain(req, installer) # try and download/install
> >>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 874,
> in
> >> obtain
> >>      return installer(requirement)
> >>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 339,
> >> in fetch_build_egg
> >>      return cmd.easy_install(req)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 623, in easy_install
> >>      return self.install_item(spec, dist.location, tmpdir, deps)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 653, in install_item
> >>      dists = self.install_eggs(spec, download, tmpdir)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 849, in install_eggs
> >>      return self.build_and_install(setup_script, setup_base)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 1130, in build_and_install
> >>      self.run_setup(setup_script, setup_base, args)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 1118, in run_setup
> >>      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
> >>  distutils.errors.DistutilsError: Setup script exited with error:
> command
> >> 'gcc' failed with exit status 1
> >>
> >>  ----------------------------------------
> >>  Failed building wheel for cryptography
> >>  Running setup.py clean for cryptography
> >>  Complete output from command /usr/bin/python -u -c "import setuptools,
> >>
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cryptography/setup.py';exec(compile(getattr(tokenize,
> >> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__,
> 'exec'))"
> >> clean --all:
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
> >>   #include <ffi.h>
> >>                   ^
> >>  compilation terminated.
> >>  Traceback (most recent call last):
> >>    File "<string>", line 1, in <module>
> >>    File "/tmp/pip-build-ViZ0L8/cryptography/setup.py", line 335, in
> >> <module>
> >>      **keywords_with_side_effects(sys.argv)
> >>    File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
> >>      _setup_distribution = dist = klass(attrs)
> >>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 265,
> >> in __init__
> >>      self.fetch_build_eggs(attrs.pop('setup_requires'))
> >>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 289,
> >> in fetch_build_eggs
> >>      parse_requirements(requires), installer=self.fetch_build_egg
> >>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 618,
> in
> >> resolve
> >>      dist = best[req.key] = env.best_match(req, self, installer)
> >>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 862,
> in
> >> best_match
> >>      return self.obtain(req, installer) # try and download/install
> >>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 874,
> in
> >> obtain
> >>      return installer(requirement)
> >>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 339,
> >> in fetch_build_egg
> >>      return cmd.easy_install(req)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 623, in easy_install
> >>      return self.install_item(spec, dist.location, tmpdir, deps)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 653, in install_item
> >>      dists = self.install_eggs(spec, download, tmpdir)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 849, in install_eggs
> >>      return self.build_and_install(setup_script, setup_base)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 1130, in build_and_install
> >>      self.run_setup(setup_script, setup_base, args)
> >>    File
> >> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py",
> line
> >> 1118, in run_setup
> >>      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
> >>  distutils.errors.DistutilsError: Setup script exited with error:
> command
> >> 'gcc' failed with exit status 1
> >>
> >>  ----------------------------------------
> >>  Failed cleaning build dir for cryptography
> >>  Running setup.py bdist_wheel for cffi ... error
> >>  Complete output from command /usr/bin/python -u -c "import setuptools,
> >>
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
> >> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__,
> 'exec'))"
> >> bdist_wheel -d /tmp/tmpGEqcgrpip-wheel- --python-tag cp27:
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  Package libffi was not found in the pkg-config search path.
> >>  Perhaps you should add the directory containing `libffi.pc'
> >>  to the PKG_CONFIG_PATH environment variable
> >>  No package 'libffi' found
> >>  running bdist_wheel
> >>  running build
> >>  running build_py
> >>  creating build
> >>  creating build/lib.linux-x86_64-2.7
> >>  creating build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi
> >>  copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi
> >>  running build_ext
> >>  building '_cffi_backend' extension
> >>  creating build/temp.linux-x86_64-2.7
> >>  creating build/temp.linux-x86_64-2.7/c
> >>  gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
> >> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> >> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
> >> -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall
> >> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> >> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
> >> -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DUSE__THREAD -I/usr/include/ffi
> >> -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o
> >> build/temp.linux-x86_64-2.7/c/_cffi_backend.o
> >>  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
> >>   #include <ffi.h>
> >>                   ^
> >>  compilation terminated.
> >>  error: command 'gcc' failed with exit status 1
> >>
> >>  ----------------------------------------
> >>  Failed building wheel for cffi
> >>  Running setup.py clean for cffi
> >>  Running setup.py bdist_wheel for pycparser ... done
> >>  Stored in directory:
> >>
> /root/.cache/pip/wheels/9b/f4/2e/d03e949a551719a1ffcb659f2c63d8444f4df12e994ce52112
> >> Successfully built Marvin pyvmomi pycparser
> >> Failed to build cryptography cffi
> >> Installing collected packages: requests, pyasn1, idna, six, setuptools,
> >> enum34, ipaddress, pycparser, cffi, cryptography, paramiko, ddt,
> pyvmomi,
> >> netaddr, Marvin
> >>  Found existing installation: requests 2.6.0
> >>    DEPRECATION: Uninstalling a distutils installed project (requests)
> has
> >> been deprecated and will be removed in a future version. This is due to
> the
> >> fact that uninstalling a distutils project will only partially uninstall
> >> the project.
> >>    Uninstalling requests-2.6.0:
> >>      Successfully uninstalled requests-2.6.0
> >>  Found existing installation: six 1.9.0
> >>    Uninstalling six-1.9.0:
> >>      Successfully uninstalled six-1.9.0
> >>  Found existing installation: setuptools 0.9.8
> >>    Uninstalling setuptools-0.9.8:
> >>      Successfully uninstalled setuptools-0.9.8
> >>  Running setup.py install for cffi ... error
> >>    Complete output from command /usr/bin/python -u -c "import
> setuptools,
> >>
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
> >> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__,
> 'exec'))"
> >> install --record /tmp/pip-101ssp-record/install-record.txt
> >> --single-version-externally-managed --compile:
> >>    Package libffi was not found in the pkg-config search path.
> >>    Perhaps you should add the directory containing `libffi.pc'
> >>    to the PKG_CONFIG_PATH environment variable
> >>    No package 'libffi' found
> >>    Package libffi was not found in the pkg-config search path.
> >>    Perhaps you should add the directory containing `libffi.pc'
> >>    to the PKG_CONFIG_PATH environment variable
> >>    No package 'libffi' found
> >>    Package libffi was not found in the pkg-config search path.
> >>    Perhaps you should add the directory containing `libffi.pc'
> >>    to the PKG_CONFIG_PATH environment variable
> >>    No package 'libffi' found
> >>    Package libffi was not found in the pkg-config search path.
> >>    Perhaps you should add the directory containing `libffi.pc'
> >>    to the PKG_CONFIG_PATH environment variable
> >>    No package 'libffi' found
> >>    Package libffi was not found in the pkg-config search path.
> >>    Perhaps you should add the directory containing `libffi.pc'
> >>    to the PKG_CONFIG_PATH environment variable
> >>    No package 'libffi' found
> >>    running install
> >>    running build
> >>    running build_py
> >>    creating build
> >>    creating build/lib.linux-x86_64-2.7
> >>    creating build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi
> >>    copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi
> >>    running build_ext
> >>    building '_cffi_backend' extension
> >>    creating build/temp.linux-x86_64-2.7
> >>    creating build/temp.linux-x86_64-2.7/c
> >>    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
> >> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> >> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
> >> -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall
> >> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> >> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
> >> -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DUSE__THREAD -I/usr/include/ffi
> >> -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o
> >> build/temp.linux-x86_64-2.7/c/_cffi_backend.o
> >>    c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or
> directory
> >>     #include <ffi.h>
> >>                     ^
> >>    compilation terminated.
> >>    error: command 'gcc' failed with exit status 1
> >>
> >>    ----------------------------------------
> >> Command "/usr/bin/python -u -c "import setuptools,
> >>
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
> >> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__,
> 'exec'))"
> >> install --record /tmp/pip-101ssp-record/install-record.txt
> >> --single-version-externally-managed --compile" failed with error code 1
> in
> >> /tmp/pip-build-ViZ0L8/cffi/
> >>
> >>
>

Re: Trouble with Marvin

Posted by Remi Bergsma <RB...@schubergphilis.com>.
Hi Will,

For me it is solved by installing two packages; did you pull this pr? We fixed it in cosmic and ported it to the cloudstack config as well. 

https://github.com/MissionCriticalCloud/bubble-toolkit/pull/123/files

Regards, Remi 


Sent from my iPhone

> On 03 May 2016, at 19:25, Will Stevens <wi...@gmail.com> wrote:
> 
> It looks like we now have a dependency on 'python-cffi', but the following
> does not help.
> 
> $ sudo yum install python-cffi
> 
> Ideas?
> 
> On Tue, May 3, 2016 at 1:18 PM, Will Stevens <wi...@gmail.com>
> wrote:
> 
>> I have been running into this the last couple days and I am trying to
>> understand what I need to change in my CI environment.
>> 
>> My CI environment has not changed and everything that went into master is
>> stuff I have run through my CI, so I am trying to figure out what happened
>> here.
>> 
>> It is like we got a new dependency on 'gcc' which we didn't have before.
>> 
>> The installation of Marvin has not changed, it is currently set as:
>> 
>> pip install --upgrade tools/marvin/dist/Marvin-*.tar.gz --allow-external
>> mysql-connector-python
>> 
>> Installing Marvin
>> DEPRECATION: --allow-external has been deprecated and will be removed in
>> the future. Due to changes in the repository protocol, it no longer has any
>> effect.
>> Processing ./tools/marvin/dist/Marvin-4.9.0-SNAPSHOT.tar.gz
>> Requirement already up-to-date: mysql-connector-python>=1.1.6 in
>> /usr/lib/python2.7/site-packages (from Marvin===4.9.0-SNAPSHOT)
>> Collecting requests>=2.2.1 (from Marvin===4.9.0-SNAPSHOT)
>>  Downloading requests-2.10.0-py2.py3-none-any.whl (506kB)
>>    100% |████████████████████████████████| 512kB 1.8MB/s
>> Collecting paramiko>=1.13.0 (from Marvin===4.9.0-SNAPSHOT)
>>  Downloading paramiko-2.0.0-py2.py3-none-any.whl (170kB)
>>    100% |████████████████████████████████| 174kB 3.2MB/s
>> Requirement already up-to-date: nose>=1.3.3 in
>> /usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg (from
>> Marvin===4.9.0-SNAPSHOT)
>> Collecting ddt>=0.4.0 (from Marvin===4.9.0-SNAPSHOT)
>>  Downloading ddt-1.0.1-py2.py3-none-any.whl
>> Collecting pyvmomi>=5.5.0 (from Marvin===4.9.0-SNAPSHOT)
>>  Downloading pyvmomi-6.0.0.2016.4.tar.gz (216kB)
>>    100% |████████████████████████████████| 225kB 3.4MB/s
>> Collecting netaddr>=0.7.14 (from Marvin===4.9.0-SNAPSHOT)
>>  Downloading netaddr-0.7.18-py2.py3-none-any.whl (1.5MB)
>>    100% |████████████████████████████████| 1.5MB 605kB/s
>> Collecting pyasn1>=0.1.7 (from paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading pyasn1-0.1.9-py2.py3-none-any.whl
>> Collecting cryptography>=1.1 (from
>> paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading cryptography-1.3.1.tar.gz (383kB)
>>    100% |████████████████████████████████| 389kB 1.1MB/s
>> Collecting six>=1.7.3 (from pyvmomi>=5.5.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading six-1.10.0-py2.py3-none-any.whl
>> Collecting idna>=2.0 (from
>> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading idna-2.1-py2.py3-none-any.whl (54kB)
>>    100% |████████████████████████████████| 61kB 3.0MB/s
>> Collecting setuptools>=11.3 (from
>> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading setuptools-21.0.0-py2.py3-none-any.whl (509kB)
>>    100% |████████████████████████████████| 512kB 1.0MB/s
>> Collecting enum34 (from
>> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading enum34-1.1.4-py2.py3-none-any.whl (61kB)
>>    100% |████████████████████████████████| 61kB 2.7MB/s
>> Collecting ipaddress (from
>> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading ipaddress-1.0.16-py27-none-any.whl
>> Collecting cffi>=1.4.1 (from
>> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading cffi-1.6.0.tar.gz (397kB)
>>    100% |████████████████████████████████| 399kB 1.8MB/s
>> Collecting pycparser (from
>> cffi>=1.4.1->cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>>  Downloading pycparser-2.14.tar.gz (223kB)
>>    100% |████████████████████████████████| 225kB 1.9MB/s
>> Building wheels for collected packages: Marvin, pyvmomi, cryptography,
>> cffi, pycparser
>>  Running setup.py bdist_wheel for Marvin ... done
>>  Stored in directory:
>> /root/.cache/pip/wheels/7f/5a/37/7f723796f0a05b8f4a5eb63ebe90f381663e638e7556f46916
>>  Running setup.py bdist_wheel for pyvmomi ... done
>>  Stored in directory:
>> /root/.cache/pip/wheels/b8/4a/84/b57aa91d338fdb54c766ef9d3c4b8d7c7a9f6b0da53e7b112d
>>  Running setup.py bdist_wheel for cryptography ... error
>>  Complete output from command /usr/bin/python -u -c "import setuptools,
>> tokenize;__file__='/tmp/pip-build-ViZ0L8/cryptography/setup.py';exec(compile(getattr(tokenize,
>> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
>> bdist_wheel -d /tmp/tmp878XjXpip-wheel- --python-tag cp27:
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
>>   #include <ffi.h>
>>                   ^
>>  compilation terminated.
>>  Traceback (most recent call last):
>>    File "<string>", line 1, in <module>
>>    File "/tmp/pip-build-ViZ0L8/cryptography/setup.py", line 335, in
>> <module>
>>      **keywords_with_side_effects(sys.argv)
>>    File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
>>      _setup_distribution = dist = klass(attrs)
>>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 265,
>> in __init__
>>      self.fetch_build_eggs(attrs.pop('setup_requires'))
>>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 289,
>> in fetch_build_eggs
>>      parse_requirements(requires), installer=self.fetch_build_egg
>>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 618, in
>> resolve
>>      dist = best[req.key] = env.best_match(req, self, installer)
>>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 862, in
>> best_match
>>      return self.obtain(req, installer) # try and download/install
>>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 874, in
>> obtain
>>      return installer(requirement)
>>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 339,
>> in fetch_build_egg
>>      return cmd.easy_install(req)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 623, in easy_install
>>      return self.install_item(spec, dist.location, tmpdir, deps)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 653, in install_item
>>      dists = self.install_eggs(spec, download, tmpdir)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 849, in install_eggs
>>      return self.build_and_install(setup_script, setup_base)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 1130, in build_and_install
>>      self.run_setup(setup_script, setup_base, args)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 1118, in run_setup
>>      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
>>  distutils.errors.DistutilsError: Setup script exited with error: command
>> 'gcc' failed with exit status 1
>> 
>>  ----------------------------------------
>>  Failed building wheel for cryptography
>>  Running setup.py clean for cryptography
>>  Complete output from command /usr/bin/python -u -c "import setuptools,
>> tokenize;__file__='/tmp/pip-build-ViZ0L8/cryptography/setup.py';exec(compile(getattr(tokenize,
>> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
>> clean --all:
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
>>   #include <ffi.h>
>>                   ^
>>  compilation terminated.
>>  Traceback (most recent call last):
>>    File "<string>", line 1, in <module>
>>    File "/tmp/pip-build-ViZ0L8/cryptography/setup.py", line 335, in
>> <module>
>>      **keywords_with_side_effects(sys.argv)
>>    File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
>>      _setup_distribution = dist = klass(attrs)
>>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 265,
>> in __init__
>>      self.fetch_build_eggs(attrs.pop('setup_requires'))
>>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 289,
>> in fetch_build_eggs
>>      parse_requirements(requires), installer=self.fetch_build_egg
>>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 618, in
>> resolve
>>      dist = best[req.key] = env.best_match(req, self, installer)
>>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 862, in
>> best_match
>>      return self.obtain(req, installer) # try and download/install
>>    File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 874, in
>> obtain
>>      return installer(requirement)
>>    File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 339,
>> in fetch_build_egg
>>      return cmd.easy_install(req)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 623, in easy_install
>>      return self.install_item(spec, dist.location, tmpdir, deps)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 653, in install_item
>>      dists = self.install_eggs(spec, download, tmpdir)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 849, in install_eggs
>>      return self.build_and_install(setup_script, setup_base)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 1130, in build_and_install
>>      self.run_setup(setup_script, setup_base, args)
>>    File
>> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
>> 1118, in run_setup
>>      raise DistutilsError("Setup script exited with %s" % (v.args[0],))
>>  distutils.errors.DistutilsError: Setup script exited with error: command
>> 'gcc' failed with exit status 1
>> 
>>  ----------------------------------------
>>  Failed cleaning build dir for cryptography
>>  Running setup.py bdist_wheel for cffi ... error
>>  Complete output from command /usr/bin/python -u -c "import setuptools,
>> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
>> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
>> bdist_wheel -d /tmp/tmpGEqcgrpip-wheel- --python-tag cp27:
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  Package libffi was not found in the pkg-config search path.
>>  Perhaps you should add the directory containing `libffi.pc'
>>  to the PKG_CONFIG_PATH environment variable
>>  No package 'libffi' found
>>  running bdist_wheel
>>  running build
>>  running build_py
>>  creating build
>>  creating build/lib.linux-x86_64-2.7
>>  creating build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi
>>  copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi
>>  running build_ext
>>  building '_cffi_backend' extension
>>  creating build/temp.linux-x86_64-2.7
>>  creating build/temp.linux-x86_64-2.7/c
>>  gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
>> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
>> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
>> -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall
>> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
>> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
>> -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DUSE__THREAD -I/usr/include/ffi
>> -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o
>> build/temp.linux-x86_64-2.7/c/_cffi_backend.o
>>  c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
>>   #include <ffi.h>
>>                   ^
>>  compilation terminated.
>>  error: command 'gcc' failed with exit status 1
>> 
>>  ----------------------------------------
>>  Failed building wheel for cffi
>>  Running setup.py clean for cffi
>>  Running setup.py bdist_wheel for pycparser ... done
>>  Stored in directory:
>> /root/.cache/pip/wheels/9b/f4/2e/d03e949a551719a1ffcb659f2c63d8444f4df12e994ce52112
>> Successfully built Marvin pyvmomi pycparser
>> Failed to build cryptography cffi
>> Installing collected packages: requests, pyasn1, idna, six, setuptools,
>> enum34, ipaddress, pycparser, cffi, cryptography, paramiko, ddt, pyvmomi,
>> netaddr, Marvin
>>  Found existing installation: requests 2.6.0
>>    DEPRECATION: Uninstalling a distutils installed project (requests) has
>> been deprecated and will be removed in a future version. This is due to the
>> fact that uninstalling a distutils project will only partially uninstall
>> the project.
>>    Uninstalling requests-2.6.0:
>>      Successfully uninstalled requests-2.6.0
>>  Found existing installation: six 1.9.0
>>    Uninstalling six-1.9.0:
>>      Successfully uninstalled six-1.9.0
>>  Found existing installation: setuptools 0.9.8
>>    Uninstalling setuptools-0.9.8:
>>      Successfully uninstalled setuptools-0.9.8
>>  Running setup.py install for cffi ... error
>>    Complete output from command /usr/bin/python -u -c "import setuptools,
>> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
>> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
>> install --record /tmp/pip-101ssp-record/install-record.txt
>> --single-version-externally-managed --compile:
>>    Package libffi was not found in the pkg-config search path.
>>    Perhaps you should add the directory containing `libffi.pc'
>>    to the PKG_CONFIG_PATH environment variable
>>    No package 'libffi' found
>>    Package libffi was not found in the pkg-config search path.
>>    Perhaps you should add the directory containing `libffi.pc'
>>    to the PKG_CONFIG_PATH environment variable
>>    No package 'libffi' found
>>    Package libffi was not found in the pkg-config search path.
>>    Perhaps you should add the directory containing `libffi.pc'
>>    to the PKG_CONFIG_PATH environment variable
>>    No package 'libffi' found
>>    Package libffi was not found in the pkg-config search path.
>>    Perhaps you should add the directory containing `libffi.pc'
>>    to the PKG_CONFIG_PATH environment variable
>>    No package 'libffi' found
>>    Package libffi was not found in the pkg-config search path.
>>    Perhaps you should add the directory containing `libffi.pc'
>>    to the PKG_CONFIG_PATH environment variable
>>    No package 'libffi' found
>>    running install
>>    running build
>>    running build_py
>>    creating build
>>    creating build/lib.linux-x86_64-2.7
>>    creating build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi
>>    copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi
>>    running build_ext
>>    building '_cffi_backend' extension
>>    creating build/temp.linux-x86_64-2.7
>>    creating build/temp.linux-x86_64-2.7/c
>>    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
>> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
>> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
>> -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall
>> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
>> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
>> -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DUSE__THREAD -I/usr/include/ffi
>> -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o
>> build/temp.linux-x86_64-2.7/c/_cffi_backend.o
>>    c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
>>     #include <ffi.h>
>>                     ^
>>    compilation terminated.
>>    error: command 'gcc' failed with exit status 1
>> 
>>    ----------------------------------------
>> Command "/usr/bin/python -u -c "import setuptools,
>> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
>> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
>> install --record /tmp/pip-101ssp-record/install-record.txt
>> --single-version-externally-managed --compile" failed with error code 1 in
>> /tmp/pip-build-ViZ0L8/cffi/
>> 
>> 

Re: Trouble with Marvin

Posted by Will Stevens <wi...@gmail.com>.
It looks like we now have a dependency on 'python-cffi', but the following
does not help.

$ sudo yum install python-cffi

Ideas?

On Tue, May 3, 2016 at 1:18 PM, Will Stevens <wi...@gmail.com>
wrote:

> I have been running into this the last couple days and I am trying to
> understand what I need to change in my CI environment.
>
> My CI environment has not changed and everything that went into master is
> stuff I have run through my CI, so I am trying to figure out what happened
> here.
>
> It is like we got a new dependency on 'gcc' which we didn't have before.
>
> The installation of Marvin has not changed, it is currently set as:
>
> pip install --upgrade tools/marvin/dist/Marvin-*.tar.gz --allow-external
> mysql-connector-python
>
> Installing Marvin
> DEPRECATION: --allow-external has been deprecated and will be removed in
> the future. Due to changes in the repository protocol, it no longer has any
> effect.
> Processing ./tools/marvin/dist/Marvin-4.9.0-SNAPSHOT.tar.gz
> Requirement already up-to-date: mysql-connector-python>=1.1.6 in
> /usr/lib/python2.7/site-packages (from Marvin===4.9.0-SNAPSHOT)
> Collecting requests>=2.2.1 (from Marvin===4.9.0-SNAPSHOT)
>   Downloading requests-2.10.0-py2.py3-none-any.whl (506kB)
>     100% |████████████████████████████████| 512kB 1.8MB/s
> Collecting paramiko>=1.13.0 (from Marvin===4.9.0-SNAPSHOT)
>   Downloading paramiko-2.0.0-py2.py3-none-any.whl (170kB)
>     100% |████████████████████████████████| 174kB 3.2MB/s
> Requirement already up-to-date: nose>=1.3.3 in
> /usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg (from
> Marvin===4.9.0-SNAPSHOT)
> Collecting ddt>=0.4.0 (from Marvin===4.9.0-SNAPSHOT)
>   Downloading ddt-1.0.1-py2.py3-none-any.whl
> Collecting pyvmomi>=5.5.0 (from Marvin===4.9.0-SNAPSHOT)
>   Downloading pyvmomi-6.0.0.2016.4.tar.gz (216kB)
>     100% |████████████████████████████████| 225kB 3.4MB/s
> Collecting netaddr>=0.7.14 (from Marvin===4.9.0-SNAPSHOT)
>   Downloading netaddr-0.7.18-py2.py3-none-any.whl (1.5MB)
>     100% |████████████████████████████████| 1.5MB 605kB/s
> Collecting pyasn1>=0.1.7 (from paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading pyasn1-0.1.9-py2.py3-none-any.whl
> Collecting cryptography>=1.1 (from
> paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading cryptography-1.3.1.tar.gz (383kB)
>     100% |████████████████████████████████| 389kB 1.1MB/s
> Collecting six>=1.7.3 (from pyvmomi>=5.5.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading six-1.10.0-py2.py3-none-any.whl
> Collecting idna>=2.0 (from
> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading idna-2.1-py2.py3-none-any.whl (54kB)
>     100% |████████████████████████████████| 61kB 3.0MB/s
> Collecting setuptools>=11.3 (from
> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading setuptools-21.0.0-py2.py3-none-any.whl (509kB)
>     100% |████████████████████████████████| 512kB 1.0MB/s
> Collecting enum34 (from
> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading enum34-1.1.4-py2.py3-none-any.whl (61kB)
>     100% |████████████████████████████████| 61kB 2.7MB/s
> Collecting ipaddress (from
> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading ipaddress-1.0.16-py27-none-any.whl
> Collecting cffi>=1.4.1 (from
> cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading cffi-1.6.0.tar.gz (397kB)
>     100% |████████████████████████████████| 399kB 1.8MB/s
> Collecting pycparser (from
> cffi>=1.4.1->cryptography>=1.1->paramiko>=1.13.0->Marvin===4.9.0-SNAPSHOT)
>   Downloading pycparser-2.14.tar.gz (223kB)
>     100% |████████████████████████████████| 225kB 1.9MB/s
> Building wheels for collected packages: Marvin, pyvmomi, cryptography,
> cffi, pycparser
>   Running setup.py bdist_wheel for Marvin ... done
>   Stored in directory:
> /root/.cache/pip/wheels/7f/5a/37/7f723796f0a05b8f4a5eb63ebe90f381663e638e7556f46916
>   Running setup.py bdist_wheel for pyvmomi ... done
>   Stored in directory:
> /root/.cache/pip/wheels/b8/4a/84/b57aa91d338fdb54c766ef9d3c4b8d7c7a9f6b0da53e7b112d
>   Running setup.py bdist_wheel for cryptography ... error
>   Complete output from command /usr/bin/python -u -c "import setuptools,
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cryptography/setup.py';exec(compile(getattr(tokenize,
> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
> bdist_wheel -d /tmp/tmp878XjXpip-wheel- --python-tag cp27:
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
>    #include <ffi.h>
>                    ^
>   compilation terminated.
>   Traceback (most recent call last):
>     File "<string>", line 1, in <module>
>     File "/tmp/pip-build-ViZ0L8/cryptography/setup.py", line 335, in
> <module>
>       **keywords_with_side_effects(sys.argv)
>     File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
>       _setup_distribution = dist = klass(attrs)
>     File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 265,
> in __init__
>       self.fetch_build_eggs(attrs.pop('setup_requires'))
>     File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 289,
> in fetch_build_eggs
>       parse_requirements(requires), installer=self.fetch_build_egg
>     File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 618, in
> resolve
>       dist = best[req.key] = env.best_match(req, self, installer)
>     File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 862, in
> best_match
>       return self.obtain(req, installer) # try and download/install
>     File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 874, in
> obtain
>       return installer(requirement)
>     File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 339,
> in fetch_build_egg
>       return cmd.easy_install(req)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 623, in easy_install
>       return self.install_item(spec, dist.location, tmpdir, deps)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 653, in install_item
>       dists = self.install_eggs(spec, download, tmpdir)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 849, in install_eggs
>       return self.build_and_install(setup_script, setup_base)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 1130, in build_and_install
>       self.run_setup(setup_script, setup_base, args)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 1118, in run_setup
>       raise DistutilsError("Setup script exited with %s" % (v.args[0],))
>   distutils.errors.DistutilsError: Setup script exited with error: command
> 'gcc' failed with exit status 1
>
>   ----------------------------------------
>   Failed building wheel for cryptography
>   Running setup.py clean for cryptography
>   Complete output from command /usr/bin/python -u -c "import setuptools,
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cryptography/setup.py';exec(compile(getattr(tokenize,
> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
> clean --all:
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
>    #include <ffi.h>
>                    ^
>   compilation terminated.
>   Traceback (most recent call last):
>     File "<string>", line 1, in <module>
>     File "/tmp/pip-build-ViZ0L8/cryptography/setup.py", line 335, in
> <module>
>       **keywords_with_side_effects(sys.argv)
>     File "/usr/lib64/python2.7/distutils/core.py", line 112, in setup
>       _setup_distribution = dist = klass(attrs)
>     File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 265,
> in __init__
>       self.fetch_build_eggs(attrs.pop('setup_requires'))
>     File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 289,
> in fetch_build_eggs
>       parse_requirements(requires), installer=self.fetch_build_egg
>     File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 618, in
> resolve
>       dist = best[req.key] = env.best_match(req, self, installer)
>     File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 862, in
> best_match
>       return self.obtain(req, installer) # try and download/install
>     File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 874, in
> obtain
>       return installer(requirement)
>     File "/usr/lib/python2.7/site-packages/setuptools/dist.py", line 339,
> in fetch_build_egg
>       return cmd.easy_install(req)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 623, in easy_install
>       return self.install_item(spec, dist.location, tmpdir, deps)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 653, in install_item
>       dists = self.install_eggs(spec, download, tmpdir)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 849, in install_eggs
>       return self.build_and_install(setup_script, setup_base)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 1130, in build_and_install
>       self.run_setup(setup_script, setup_base, args)
>     File
> "/usr/lib/python2.7/site-packages/setuptools/command/easy_install.py", line
> 1118, in run_setup
>       raise DistutilsError("Setup script exited with %s" % (v.args[0],))
>   distutils.errors.DistutilsError: Setup script exited with error: command
> 'gcc' failed with exit status 1
>
>   ----------------------------------------
>   Failed cleaning build dir for cryptography
>   Running setup.py bdist_wheel for cffi ... error
>   Complete output from command /usr/bin/python -u -c "import setuptools,
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
> bdist_wheel -d /tmp/tmpGEqcgrpip-wheel- --python-tag cp27:
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   Package libffi was not found in the pkg-config search path.
>   Perhaps you should add the directory containing `libffi.pc'
>   to the PKG_CONFIG_PATH environment variable
>   No package 'libffi' found
>   running bdist_wheel
>   running build
>   running build_py
>   creating build
>   creating build/lib.linux-x86_64-2.7
>   creating build/lib.linux-x86_64-2.7/cffi
>   copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi
>   copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi
>   running build_ext
>   building '_cffi_backend' extension
>   creating build/temp.linux-x86_64-2.7
>   creating build/temp.linux-x86_64-2.7/c
>   gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
> -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
> -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DUSE__THREAD -I/usr/include/ffi
> -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o
> build/temp.linux-x86_64-2.7/c/_cffi_backend.o
>   c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
>    #include <ffi.h>
>                    ^
>   compilation terminated.
>   error: command 'gcc' failed with exit status 1
>
>   ----------------------------------------
>   Failed building wheel for cffi
>   Running setup.py clean for cffi
>   Running setup.py bdist_wheel for pycparser ... done
>   Stored in directory:
> /root/.cache/pip/wheels/9b/f4/2e/d03e949a551719a1ffcb659f2c63d8444f4df12e994ce52112
> Successfully built Marvin pyvmomi pycparser
> Failed to build cryptography cffi
> Installing collected packages: requests, pyasn1, idna, six, setuptools,
> enum34, ipaddress, pycparser, cffi, cryptography, paramiko, ddt, pyvmomi,
> netaddr, Marvin
>   Found existing installation: requests 2.6.0
>     DEPRECATION: Uninstalling a distutils installed project (requests) has
> been deprecated and will be removed in a future version. This is due to the
> fact that uninstalling a distutils project will only partially uninstall
> the project.
>     Uninstalling requests-2.6.0:
>       Successfully uninstalled requests-2.6.0
>   Found existing installation: six 1.9.0
>     Uninstalling six-1.9.0:
>       Successfully uninstalled six-1.9.0
>   Found existing installation: setuptools 0.9.8
>     Uninstalling setuptools-0.9.8:
>       Successfully uninstalled setuptools-0.9.8
>   Running setup.py install for cffi ... error
>     Complete output from command /usr/bin/python -u -c "import setuptools,
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
> install --record /tmp/pip-101ssp-record/install-record.txt
> --single-version-externally-managed --compile:
>     Package libffi was not found in the pkg-config search path.
>     Perhaps you should add the directory containing `libffi.pc'
>     to the PKG_CONFIG_PATH environment variable
>     No package 'libffi' found
>     Package libffi was not found in the pkg-config search path.
>     Perhaps you should add the directory containing `libffi.pc'
>     to the PKG_CONFIG_PATH environment variable
>     No package 'libffi' found
>     Package libffi was not found in the pkg-config search path.
>     Perhaps you should add the directory containing `libffi.pc'
>     to the PKG_CONFIG_PATH environment variable
>     No package 'libffi' found
>     Package libffi was not found in the pkg-config search path.
>     Perhaps you should add the directory containing `libffi.pc'
>     to the PKG_CONFIG_PATH environment variable
>     No package 'libffi' found
>     Package libffi was not found in the pkg-config search path.
>     Perhaps you should add the directory containing `libffi.pc'
>     to the PKG_CONFIG_PATH environment variable
>     No package 'libffi' found
>     running install
>     running build
>     running build_py
>     creating build
>     creating build/lib.linux-x86_64-2.7
>     creating build/lib.linux-x86_64-2.7/cffi
>     copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi
>     copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi
>     running build_ext
>     building '_cffi_backend' extension
>     creating build/temp.linux-x86_64-2.7
>     creating build/temp.linux-x86_64-2.7/c
>     gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
> -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
> --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
> -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DUSE__THREAD -I/usr/include/ffi
> -I/usr/include/libffi -I/usr/include/python2.7 -c c/_cffi_backend.c -o
> build/temp.linux-x86_64-2.7/c/_cffi_backend.o
>     c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory
>      #include <ffi.h>
>                      ^
>     compilation terminated.
>     error: command 'gcc' failed with exit status 1
>
>     ----------------------------------------
> Command "/usr/bin/python -u -c "import setuptools,
> tokenize;__file__='/tmp/pip-build-ViZ0L8/cffi/setup.py';exec(compile(getattr(tokenize,
> 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))"
> install --record /tmp/pip-101ssp-record/install-record.txt
> --single-version-externally-managed --compile" failed with error code 1 in
> /tmp/pip-build-ViZ0L8/cffi/
>
>