grpc python installation from source

1,298 views
Skip to first unread message

mat...@lefty.io

unread,
Dec 11, 2015, 6:28:02 AM12/11/15
to grpc.io
Hello,

I have cloned the grpc github directory in /opt and built and installed the cpp code from source.
I then installed the python code with CONFIG=opt tools/run_tests/build_python.sh 2.7
I did that a few months ago and it created a python2.7_virtual_environment in my grpc directory
I then used the python bin from this directory to use grpc in python.

The problem is, after updating the source to HEAD at master branch, the installation for python doesn't seem to to work anymore.

I did a git pull && git submodule update --init && make clean && make && make install for the cpp code, that works fine.
I did a CONFIG=opt tools/run_tests/build_python.sh 2.7 for the python code but I had still error when trying to run grpc python code.
ImportError: /opt/grpc/python2.7_virtual_environment/local/lib/python2.7/site-packages/grpc/_adapter/_c.so: undefined symbol: grpc_composite_credentials_create

For clarity I renamed the python2.7_virtual_environment directory with _old and redid a CONFIG=opt tools/run_tests/build_python.sh 2.7
It did not create the virtual environment directory it used to create.

I don't know if this is normal ? If so, how to use grpc python code ?
If not, how could I make it work ?

Thanks in advance for any pointers

Here is the output summary of the command CONFIG=opt tools/run_tests/build_python.sh 2.7 :
 py27: skipped tests
  congratulations :)
+ /opt/grpc/src/python/grpcio/.tox/py27/bin/python /opt/grpc/src/python/grpcio/setup.py build
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/cygrpc.pyx
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/call.pyx
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/call.pxd
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/channel.pyx
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/channel.pxd
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/completion_queue.pyx
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/completion_queue.pxd
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/credentials.pyx
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/credentials.pxd
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/records.pyx
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/records.pxd
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/server.pyx
missing cimport in module 'grpc._cython._cygrpc': grpc/_cython/_cygrpc/server.pxd
running build
running build_py
running build_proto_modules
running build_project_metadata
copying ./grpc/_grpcio_metadata.py -> build/lib.linux-x86_64-2.7/grpc
running build_ext
copying build/lib.linux-x86_64-2.7/grpc/_cython/cygrpc.so -> ./grpc/_cython
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/call.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/channel.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/completion_queue.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/credentials.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/records.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/server.so -> ./grpc/_cython/_cygrpc


Nathaniel Manista

unread,
Dec 13, 2015, 2:28:04 PM12/13/15
to mat...@lefty.io, grpc.io
On Fri, Dec 11, 2015 at 3:28 AM, <mat...@lefty.io> wrote:
I have cloned the grpc github directory in /opt and built and installed the cpp code from source.
I then installed the python code with CONFIG=opt tools/run_tests/build_python.sh 2.7
I did that a few months ago and it created a python2.7_virtual_environment in my grpc directory
I then used the python bin from this directory to use grpc in python.

The problem is, after updating the source to HEAD at master branch, the installation for python doesn't seem to to work anymore.

I suspect that this is due to incompatibilities between the core you installed months ago and the Python extension code built from HEAD. Does the problem persist if you rebuild and reinstall the C++ code from the same HEAD?
-Nathaniel

mat...@lefty.io

unread,
Dec 14, 2015, 6:00:02 AM12/14/15
to grpc.io, mat...@lefty.io
Hi
Thank you for your answer.

When I do a git pull and git submodule update --init, both cpp and python should be at the HEAD right ?
That's what I did before getting stuck.

For clarity I did a clean install in a VM.

cd /opt
git clone https://github.com/grpc/grpc.git
cd grpc
git submodule update --init
cd /opt/grpc/third_party/protobuf
./autogen.sh
./configure
make
make install
cd /opt/grpc
ldconfig
make
make install

Then:
CONFIG=opt tools/run_tests/build_python.sh 2.7
In the output of this command I didn't see errors but maybe I'm missing something ?

It didn't create a python2.7_virtual_environment directory in $GRPC_ROOT

So how am I supposed to use grpc in python ? According to the run_server.sh in examples/python/route_guide/ there should be such a directory.

The end of the output is pasted below:

Writing /tmp/easy_install-Kflf7j/snowballstemmer-1.2.0/setup.cfg
Running snowballstemmer-1.2.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-Kflf7j/snowballstemmer-1.2.0/egg-dist-tmp-amJ1na
warning: no files found matching '*.py' under directory 'src'
zip_safe flag not set; analyzing archive contents...
Moving snowballstemmer-1.2.0-py2.7.egg to /opt/grpc/src/python/grpcio/.eggs

Installed /opt/grpc/src/python/grpcio/.eggs/snowballstemmer-1.2.0-py2.7.egg
Searching for docutils>=0.11
Reading https://pypi.python.org/simple/docutils/
Best match: docutils 0.12
Downloading https://pypi.python.org/packages/source/d/docutils/docutils-0.12.tar.gz#md5=4622263b62c5c771c03502afa3157768
Processing docutils-0.12.tar.gz
Writing /tmp/easy_install-IomLYZ/docutils-0.12/setup.cfg
Running docutils-0.12/setup.py -q bdist_egg --dist-dir /tmp/easy_install-IomLYZ/docutils-0.12/egg-dist-tmp-voE0fQ
warning: no files found matching 'MANIFEST'
warning: no files found matching '*' under directory 'extras'
warning: no previously-included files matching '.cvsignore' found under directory '*'
warning: no previously-included files matching '*.pyc' found under directory '*'
warning: no previously-included files matching '*~' found under directory '*'
warning: no previously-included files matching '.DS_Store' found under directory '*'
zip_safe flag not set; analyzing archive contents...
docutils.parsers.rst.directives.misc: module references __file__
docutils.writers.docutils_xml: module references __path__
docutils.writers.html4css1.__init__: module references __file__
docutils.writers.latex2e.__init__: module references __file__
docutils.writers.odf_odt.__init__: module references __file__
docutils.writers.pep_html.__init__: module references __file__
docutils.writers.s5_html.__init__: module references __file__
creating /opt/grpc/src/python/grpcio/.eggs/docutils-0.12-py2.7.egg
Extracting docutils-0.12-py2.7.egg to /opt/grpc/src/python/grpcio/.eggs

Installed /opt/grpc/src/python/grpcio/.eggs/docutils-0.12-py2.7.egg
Searching for Pygments>=2.0
Reading https://pypi.python.org/simple/Pygments/
Best match: Pygments 2.0.2
Downloading https://pypi.python.org/packages/source/P/Pygments/Pygments-2.0.2.tar.gz#md5=238587a1370d62405edabd0794b3ec4a
Processing Pygments-2.0.2.tar.gz
Writing /tmp/easy_install-LcWQo4/Pygments-2.0.2/setup.cfg
Running Pygments-2.0.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-LcWQo4/Pygments-2.0.2/egg-dist-tmp-V96ecD
creating /opt/grpc/src/python/grpcio/.eggs/Pygments-2.0.2-py2.7.egg
Extracting Pygments-2.0.2-py2.7.egg to /opt/grpc/src/python/grpcio/.eggs

Installed /opt/grpc/src/python/grpcio/.eggs/Pygments-2.0.2-py2.7.egg
Searching for Jinja2>=2.3
Reading https://pypi.python.org/simple/Jinja2/
Best match: Jinja2 2.8
Downloading https://pypi.python.org/packages/source/J/Jinja2/Jinja2-2.8.tar.gz#md5=edb51693fe22c53cee5403775c71a99e
Processing Jinja2-2.8.tar.gz
Writing /tmp/easy_install-FFuUjY/Jinja2-2.8/setup.cfg
Running Jinja2-2.8/setup.py -q bdist_egg --dist-dir /tmp/easy_install-FFuUjY/Jinja2-2.8/egg-dist-tmp-CPw_7k
warning: no files found matching 'run-tests.py'
warning: no files found matching '*' under directory 'custom_fixers'
warning: no files found matching '*' under directory 'jinja2/testsuite/res'
warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no previously-included files matching '*.pyc' found under directory 'jinja2'
warning: no previously-included files matching '*.pyc' found under directory 'docs'
warning: no previously-included files matching '*.pyo' found under directory 'jinja2'
warning: no previously-included files matching '*.pyo' found under directory 'docs'
creating /opt/grpc/src/python/grpcio/.eggs/Jinja2-2.8-py2.7.egg
Extracting Jinja2-2.8-py2.7.egg to /opt/grpc/src/python/grpcio/.eggs

Installed /opt/grpc/src/python/grpcio/.eggs/Jinja2-2.8-py2.7.egg
Searching for six>=1.4
Reading https://pypi.python.org/simple/six/
Best match: six 1.10.0
Downloading https://pypi.python.org/packages/source/s/six/six-1.10.0.tar.gz#md5=34eed507548117b2ab523ab14b2f8b55
Processing six-1.10.0.tar.gz
Writing /tmp/easy_install-r29nLo/six-1.10.0/setup.cfg
Running six-1.10.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-r29nLo/six-1.10.0/egg-dist-tmp-7zVa3R
no previously-included directories found matching 'documentation/_build'
zip_safe flag not set; analyzing archive contents...
six: module references __path__
creating /opt/grpc/src/python/grpcio/.eggs/six-1.10.0-py2.7.egg
Extracting six-1.10.0-py2.7.egg to /opt/grpc/src/python/grpcio/.eggs

Installed /opt/grpc/src/python/grpcio/.eggs/six-1.10.0-py2.7.egg
Searching for pytz>=0a
Reading https://pypi.python.org/simple/pytz/
Best match: pytz 2015.7
Downloading https://pypi.python.org/packages/2.7/p/pytz/pytz-2015.7-py2.7.egg#md5=f89213bbd728cb56e94ea4a4740737f3
Processing pytz-2015.7-py2.7.egg
Moving pytz-2015.7-py2.7.egg to /opt/grpc/src/python/grpcio/.eggs

Installed /opt/grpc/src/python/grpcio/.eggs/pytz-2015.7-py2.7.egg
Searching for MarkupSafe
Reading https://pypi.python.org/simple/MarkupSafe/
Best match: MarkupSafe 0.23
Downloading https://pypi.python.org/packages/source/M/MarkupSafe/MarkupSafe-0.23.tar.gz#md5=f5ab3deee4c37cd6a922fb81e730da6e
Processing MarkupSafe-0.23.tar.gz
Writing /tmp/easy_install-anVOIL/MarkupSafe-0.23/setup.cfg
Running MarkupSafe-0.23/setup.py -q bdist_egg --dist-dir /tmp/easy_install-anVOIL/MarkupSafe-0.23/egg-dist-tmp-dq0bgE
creating /opt/grpc/src/python/grpcio/.eggs/MarkupSafe-0.23-py2.7-linux-x86_64.egg
Extracting MarkupSafe-0.23-py2.7-linux-x86_64.egg to /opt/grpc/src/python/grpcio/.eggs

Installed /opt/grpc/src/python/grpcio/.eggs/MarkupSafe-0.23-py2.7-linux-x86_64.egg

running build
running build_py
running build_proto_modules
running build_project_metadata
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/grpc
copying ./grpc/__init__.py -> build/lib.linux-x86_64-2.7/grpc
copying ./grpc/_grpcio_metadata.py -> build/lib.linux-x86_64-2.7/grpc
creating build/lib.linux-x86_64-2.7/grpc/beta
copying ./grpc/beta/utilities.py -> build/lib.linux-x86_64-2.7/grpc/beta
copying ./grpc/beta/interfaces.py -> build/lib.linux-x86_64-2.7/grpc/beta
copying ./grpc/beta/_connectivity_channel.py -> build/lib.linux-x86_64-2.7/grpc/beta
copying ./grpc/beta/__init__.py -> build/lib.linux-x86_64-2.7/grpc/beta
copying ./grpc/beta/_server.py -> build/lib.linux-x86_64-2.7/grpc/beta
copying ./grpc/beta/_stub.py -> build/lib.linux-x86_64-2.7/grpc/beta
copying ./grpc/beta/implementations.py -> build/lib.linux-x86_64-2.7/grpc/beta
creating build/lib.linux-x86_64-2.7/grpc/_links
copying ./grpc/_links/_constants.py -> build/lib.linux-x86_64-2.7/grpc/_links
copying ./grpc/_links/invocation.py -> build/lib.linux-x86_64-2.7/grpc/_links
copying ./grpc/_links/service.py -> build/lib.linux-x86_64-2.7/grpc/_links
copying ./grpc/_links/__init__.py -> build/lib.linux-x86_64-2.7/grpc/_links
creating build/lib.linux-x86_64-2.7/grpc/early_adopter
copying ./grpc/early_adopter/__init__.py -> build/lib.linux-x86_64-2.7/grpc/early_adopter
copying ./grpc/early_adopter/implementations.py -> build/lib.linux-x86_64-2.7/grpc/early_adopter
creating build/lib.linux-x86_64-2.7/grpc/_adapter
copying ./grpc/_adapter/_implementations.py -> build/lib.linux-x86_64-2.7/grpc/_adapter
copying ./grpc/_adapter/_types.py -> build/lib.linux-x86_64-2.7/grpc/_adapter
copying ./grpc/_adapter/fore.py -> build/lib.linux-x86_64-2.7/grpc/_adapter
copying ./grpc/_adapter/_common.py -> build/lib.linux-x86_64-2.7/grpc/_adapter
copying ./grpc/_adapter/__init__.py -> build/lib.linux-x86_64-2.7/grpc/_adapter
copying ./grpc/_adapter/_low.py -> build/lib.linux-x86_64-2.7/grpc/_adapter
copying ./grpc/_adapter/rear.py -> build/lib.linux-x86_64-2.7/grpc/_adapter
copying ./grpc/_adapter/_intermediary_low.py -> build/lib.linux-x86_64-2.7/grpc/_adapter
creating build/lib.linux-x86_64-2.7/grpc/framework
copying ./grpc/framework/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework
creating build/lib.linux-x86_64-2.7/grpc/_cython
copying ./grpc/_cython/__init__.py -> build/lib.linux-x86_64-2.7/grpc/_cython
creating build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_ingestion.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_constants.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_expiration.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_context.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_ends.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/util.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_transmission.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/in_memory.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/exceptions.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/interfaces.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_emission.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_termination.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_interfaces.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/implementations.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_cancellation.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/null.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
copying ./grpc/framework/base/_reception.py -> build/lib.linux-x86_64-2.7/grpc/framework/base
creating build/lib.linux-x86_64-2.7/grpc/framework/common
copying ./grpc/framework/common/cardinality.py -> build/lib.linux-x86_64-2.7/grpc/framework/common
copying ./grpc/framework/common/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/common
copying ./grpc/framework/common/style.py -> build/lib.linux-x86_64-2.7/grpc/framework/common
creating build/lib.linux-x86_64-2.7/grpc/framework/crust
copying ./grpc/framework/crust/_control.py -> build/lib.linux-x86_64-2.7/grpc/framework/crust
copying ./grpc/framework/crust/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/crust
copying ./grpc/framework/crust/_calls.py -> build/lib.linux-x86_64-2.7/grpc/framework/crust
copying ./grpc/framework/crust/implementations.py -> build/lib.linux-x86_64-2.7/grpc/framework/crust
copying ./grpc/framework/crust/_service.py -> build/lib.linux-x86_64-2.7/grpc/framework/crust
creating build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_ingestion.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_constants.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_expiration.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_context.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_transmission.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_end.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_emission.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_termination.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_interfaces.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_protocol.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_operation.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/implementations.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_utilities.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
copying ./grpc/framework/core/_reception.py -> build/lib.linux-x86_64-2.7/grpc/framework/core
creating build/lib.linux-x86_64-2.7/grpc/framework/interfaces
copying ./grpc/framework/interfaces/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces
creating build/lib.linux-x86_64-2.7/grpc/framework/alpha
copying ./grpc/framework/alpha/_face_utilities.py -> build/lib.linux-x86_64-2.7/grpc/framework/alpha
copying ./grpc/framework/alpha/_reexport.py -> build/lib.linux-x86_64-2.7/grpc/framework/alpha
copying ./grpc/framework/alpha/exceptions.py -> build/lib.linux-x86_64-2.7/grpc/framework/alpha
copying ./grpc/framework/alpha/utilities.py -> build/lib.linux-x86_64-2.7/grpc/framework/alpha
copying ./grpc/framework/alpha/interfaces.py -> build/lib.linux-x86_64-2.7/grpc/framework/alpha
copying ./grpc/framework/alpha/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/alpha
creating build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/stream_util.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/logging_pool.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/stream.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/_timer_future.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/future.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/later.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/activated.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/callable_util.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/abandonment.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
copying ./grpc/framework/foundation/relay.py -> build/lib.linux-x86_64-2.7/grpc/framework/foundation
creating build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/exceptions.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/utilities.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/interfaces.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/demonstration.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/_control.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/_calls.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/implementations.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
copying ./grpc/framework/face/_service.py -> build/lib.linux-x86_64-2.7/grpc/framework/face
creating build/lib.linux-x86_64-2.7/grpc/framework/interfaces/base
copying ./grpc/framework/interfaces/base/utilities.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/base
copying ./grpc/framework/interfaces/base/base.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/base
copying ./grpc/framework/interfaces/base/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/base
creating build/lib.linux-x86_64-2.7/grpc/framework/interfaces/links
copying ./grpc/framework/interfaces/links/links.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/links
copying ./grpc/framework/interfaces/links/utilities.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/links
copying ./grpc/framework/interfaces/links/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/links
creating build/lib.linux-x86_64-2.7/grpc/framework/interfaces/face
copying ./grpc/framework/interfaces/face/face.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/face
copying ./grpc/framework/interfaces/face/utilities.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/face
copying ./grpc/framework/interfaces/face/__init__.py -> build/lib.linux-x86_64-2.7/grpc/framework/interfaces/face
creating build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc
copying ./grpc/_cython/_cygrpc/__init__.py -> build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc
running build_ext
building 'grpc._cython.cygrpc' extension
creating build/temp.linux-x86_64-2.7
creating build/temp.linux-x86_64-2.7/grpc
creating build/temp.linux-x86_64-2.7/grpc/_cython
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -I/opt/grpc/include -std=c89 -fPIC -DCYTHON_TRACE_NOGIL=1 -I. -I/usr/include/python2.7 -c grpc/_cython/cygrpc.c -o build/temp.linux-x86_64-2.7/grpc/_cython/cygrpc.o
In file included from grpc/_cython/cygrpc.c:266:0:
/opt/grpc/include/grpc/support/alloc.h:66:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
 gpr_allocation_functions gpr_get_allocation_functions();
 ^
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -L/opt/grpc/libs/opt -I/opt/grpc/include -std=c89 build/temp.linux-x86_64-2.7/grpc/_cython/cygrpc.o -lgrpc -lgpr -lrt -o build/lib.linux-x86_64-2.7/grpc/_cython/cygrpc.so
building 'grpc._cython._cygrpc.call' extension
creating build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -I/opt/grpc/include -std=c89 -fPIC -DCYTHON_TRACE_NOGIL=1 -I. -I/usr/include/python2.7 -c grpc/_cython/_cygrpc/call.c -o build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/call.o
In file included from grpc/_cython/_cygrpc/call.c:263:0:
/opt/grpc/include/grpc/support/alloc.h:66:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
 gpr_allocation_functions gpr_get_allocation_functions();
 ^
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -L/opt/grpc/libs/opt -I/opt/grpc/include -std=c89 build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/call.o -lgrpc -lgpr -lrt -o build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/call.so
building 'grpc._cython._cygrpc.channel' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -I/opt/grpc/include -std=c89 -fPIC -DCYTHON_TRACE_NOGIL=1 -I. -I/usr/include/python2.7 -c grpc/_cython/_cygrpc/channel.c -o build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/channel.o
In file included from grpc/_cython/_cygrpc/channel.c:263:0:
/opt/grpc/include/grpc/support/alloc.h:66:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
 gpr_allocation_functions gpr_get_allocation_functions();
 ^
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -L/opt/grpc/libs/opt -I/opt/grpc/include -std=c89 build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/channel.o -lgrpc -lgpr -lrt -o build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/channel.so
building 'grpc._cython._cygrpc.completion_queue' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -I/opt/grpc/include -std=c89 -fPIC -DCYTHON_TRACE_NOGIL=1 -I. -I/usr/include/python2.7 -c grpc/_cython/_cygrpc/completion_queue.c -o build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/completion_queue.o
In file included from grpc/_cython/_cygrpc/completion_queue.c:263:0:
/opt/grpc/include/grpc/support/alloc.h:66:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
 gpr_allocation_functions gpr_get_allocation_functions();
 ^
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -L/opt/grpc/libs/opt -I/opt/grpc/include -std=c89 build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/completion_queue.o -lgrpc -lgpr -lrt -o build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/completion_queue.so
building 'grpc._cython._cygrpc.credentials' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -I/opt/grpc/include -std=c89 -fPIC -DCYTHON_TRACE_NOGIL=1 -I. -I/usr/include/python2.7 -c grpc/_cython/_cygrpc/credentials.c -o build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/credentials.o
In file included from grpc/_cython/_cygrpc/credentials.c:266:0:
/opt/grpc/include/grpc/support/alloc.h:66:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
 gpr_allocation_functions gpr_get_allocation_functions();
 ^
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -L/opt/grpc/libs/opt -I/opt/grpc/include -std=c89 build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/credentials.o -lgrpc -lgpr -lrt -o build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/credentials.so
building 'grpc._cython._cygrpc.records' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -I/opt/grpc/include -std=c89 -fPIC -DCYTHON_TRACE_NOGIL=1 -I. -I/usr/include/python2.7 -c grpc/_cython/_cygrpc/records.c -o build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/records.o
In file included from grpc/_cython/_cygrpc/records.c:262:0:
/opt/grpc/include/grpc/support/alloc.h:66:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
 gpr_allocation_functions gpr_get_allocation_functions();
 ^
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -L/opt/grpc/libs/opt -I/opt/grpc/include -std=c89 build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/records.o -lgrpc -lgpr -lrt -o build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/records.so
building 'grpc._cython._cygrpc.server' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -I/opt/grpc/include -std=c89 -fPIC -DCYTHON_TRACE_NOGIL=1 -I. -I/usr/include/python2.7 -c grpc/_cython/_cygrpc/server.c -o build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/server.o
In file included from grpc/_cython/_cygrpc/server.c:263:0:
/opt/grpc/include/grpc/support/alloc.h:66:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
 gpr_allocation_functions gpr_get_allocation_functions();
 ^
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -D_FORTIFY_SOURCE=2 -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -L/opt/grpc/libs/opt -I/opt/grpc/include -std=c89 build/temp.linux-x86_64-2.7/grpc/_cython/_cygrpc/server.o -lgrpc -lgpr -lrt -o build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/server.so

copying build/lib.linux-x86_64-2.7/grpc/_cython/cygrpc.so -> ./grpc/_cython
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/call.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/channel.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/completion_queue.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/credentials.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/records.so -> ./grpc/_cython/_cygrpc
copying build/lib.linux-x86_64-2.7/grpc/_cython/_cygrpc/server.so -> ./grpc/_cython/_cygrpc
root@vagrant-ubuntu-trusty-64:/opt/grpc# ls
BUILD            INSTALL  Makefile  README.md    bins        cache.mk       doc  examples      grpc.bzl  libs  package.json  templates  third_party  vsprojects
CONTRIBUTING.md  LICENSE  PATENTS   binding.gyp  build.yaml  composer.json  etc  gRPC.podspec  include   objs  src           test       tools

mat...@lefty.io

unread,
Dec 17, 2015, 5:12:45 AM12/17/15
to grpc.io, mat...@lefty.io
Hi
Yes, the problem persists.
Actually even with a new ubuntu 14.04 vm I can't get the python2.7_virtual_environment directory.
Is this related to the use of tox ?
Best,
Mathias


On Sunday, December 13, 2015 at 8:28:04 PM UTC+1, Nathaniel Manista wrote:

Christian Rivasseau

unread,
Dec 17, 2015, 10:55:33 AM12/17/15
to Mathias Chouilly, grpc.io
Hi Nathaniel,

Correct me if I'm wrong,
It appears that tools/run_tests/build_python.sh was changed recently to use tox
and that's what broke (the virtual environment is not installed anymore, at least not
in the same way).

We have had success by not using tools/run_tests/build_python.sh but just setup.py install directly...


--
You received this message because you are subscribed to the Google Groups "grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+u...@googlegroups.com.
To post to this group, send email to grp...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/4391d07f-0cdd-4b3f-9149-fc2dfe1ea9af%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Christian Rivasseau
Co-founder and CTO @ Lefty
+33 6 67 35 26 74
Reply all
Reply to author
Forward
0 new messages