Yes, the package uploaded to PyPI only contains the pure python
implementation. To use the cpp implementation you'll need to download the
source tar from the download page and build it from source.

On Mon, Jun 24, 2013 at 4:49 PM, William Rowan <william.ro...@gmail.com>wrote:

> I'm having the same problem. It looks like the package on PyPI is missing
> the pyext directory that contains the sources for the extension. Browsing
> the repository I can see the missing files where they are expected to be in
> the source tree. It looks like the directory was just excluded from the
> upload to PyPI.
>
>
> On Tuesday, June 4, 2013 5:59:33 AM UTC-7, Scott MacDonald wrote:
>>
>> Hi all,
>>
>> I am having issues trying to make use of the C++ binding for Python.  I
>> am running Ubuntu 12.10, and trying to create a virtualenv to run some
>> python applications that use protobufs.  I wanted to try using the
>> PROTOCOL_BUFFERS_PYTHON_**IMPLEMENTATION=cpp variable to measure the
>> performance gains.
>>
>> Any suggestions are GREATLY appreciated !
>>
>> Here are the steps I followed:
>>
>> user@system$ virtualenv API2
>> user@system$ export PROTOCOL_BUFFERS_PYTHON_**IMPLEMENTATION=cpp
>> user@system$ source API2/bin/activate
>> (API2)user@system$ export PROTOCOL_BUFFERS_PYTHON_**IMPLEMENTATION=cpp
>> (API2)user@system$ sudo PROTOCOL_BUFFERS_PYTHON_**IMPLEMENTATION=cpp pip
>> install protobuf
>> Downloading/unpacking protobuf from https://pypi.python.org/**
>> packages/source/p/protobuf/**protobuf-2.5.0.tar.gz#md5=**
>> 338813f3629d59e9579fed9035ecd4**57<https://pypi.python.org/packages/source/p/protobuf/protobuf-2.5.0.tar.gz#md5=338813f3629d59e9579fed9035ecd457>
>>   Running setup.py egg_info for package protobuf
>>     Using EXPERIMENTAL C++ Implmenetation.
>>
>> Downloading/unpacking distribute from https://pypi.python.org/**
>> packages/source/d/distribute/**distribute-0.6.45.tar.gz#md5=**
>> 8953f2c07e6700dabf2ec150129b8c**31<https://pypi.python.org/packages/source/d/distribute/distribute-0.6.45.tar.gz#md5=8953f2c07e6700dabf2ec150129b8c31>(from
>>  protobuf)
>>   Running setup.py egg_info for package distribute
>>
>> Installing collected packages: protobuf, distribute
>>   Running setup.py install for protobuf
>> *    Using EXPERIMENTAL C++ Implmenetation.*
>>     building 'google.protobuf.internal._**net_proto2___python' extension
>>     x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g
>> -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I. -I/usr/include/python2.7 -c
>> google/protobuf/pyext/python_**descriptor.cc -o
>> build/temp.linux-x86_64-2.7/**google/protobuf/pyext/python_**descriptor.o
>>     x86_64-linux-gnu-gcc: error: 
>> google/protobuf/pyext/python_**descriptor.cc:
>> No such file or directory
>>     x86_64-linux-gnu-gcc: fatal error: no input files
>>     compilation terminated.
>>     error: command 'x86_64-linux-gnu-gcc' failed with exit status 4
>>     Complete output from command /usr/bin/python -c "import
>> setuptools;__file__='/tmp/pip-**build-root/protobuf/setup.py';**
>> exec(compile(open(__file__).**read().replace('\r\n', '\n'), __file__,
>> 'exec'))" install --record /tmp/pip-zOZjtw-record/**install-record.txt
>> --single-version-externally-**managed:
>>     Using EXPERIMENTAL C++ Implmenetation.
>>
>> running install
>>
>> running build
>> creating build/lib.linux-x86_64-2.7
>>
>> creating build/lib.linux-x86_64-2.7/**google
>>
>> creating build/lib.linux-x86_64-2.7/**google/protobuf
>>
>> creating build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/__**init__.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/api_**implementation.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/**containers.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/cpp_**message.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/**decoder.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/**encoder.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/enum_**type_wrapper.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/**message_listener.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/**python_message.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/type_**checkers.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/internal/wire_**format.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/internal
>>
>> copying google/protobuf/__init__.py -> build/lib.linux-x86_64-2.7/**
>> google/protobuf
>>
>> copying google/protobuf/descriptor.py -> build/lib.linux-x86_64-2.7/**
>> google/protobuf
>>
>> copying google/protobuf/descriptor_**pb2.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf
>>
>> creating build/lib.linux-x86_64-2.7/**google/protobuf/compiler
>>
>> copying google/protobuf/compiler/__**init__.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/compiler
>>
>> copying google/protobuf/compiler/**plugin_pb2.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf/compiler
>>
>> copying google/protobuf/message.py -> build/lib.linux-x86_64-2.7/**
>> google/protobuf
>>
>> copying google/protobuf/descriptor_**database.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf
>>
>> copying google/protobuf/descriptor_**pool.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf
>>
>> copying google/protobuf/message_**factory.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf
>>
>> copying google/protobuf/reflection.py -> build/lib.linux-x86_64-2.7/**
>> google/protobuf
>>
>> copying google/protobuf/service.py -> build/lib.linux-x86_64-2.7/**
>> google/protobuf
>>
>> copying google/protobuf/service_**reflection.py ->
>> build/lib.linux-x86_64-2.7/**google/protobuf
>>
>> copying google/protobuf/text_format.py -> build/lib.linux-x86_64-2.7/**
>> google/protobuf
>>
>> copying google/__init__.py -> build/lib.linux-x86_64-2.7/**google
>>
>> running build_ext
>>
>> building 'google.protobuf.internal._**net_proto2___python' extension
>>
>> creating build/temp.linux-x86_64-2.7
>>
>> creating build/temp.linux-x86_64-2.7/**google
>>
>> creating build/temp.linux-x86_64-2.7/**google/protobuf
>>
>> creating build/temp.linux-x86_64-2.7/**google/protobuf/pyext
>>
>> x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv
>> -O2 -Wall -Wstrict-prototypes -fPIC -I. -I/usr/include/python2.7 -c
>> google/protobuf/pyext/python_**descriptor.cc -o
>> build/temp.linux-x86_64-2.7/**google/protobuf/pyext/python_**descriptor.o
>>
>> x86_64-linux-gnu-gcc: error: google/protobuf/pyext/python_**descriptor.cc:
>> No such file or directory
>>
>> x86_64-linux-gnu-gcc: fatal error: no input files
>>
>> compilation terminated.
>>
>> error: command 'x86_64-linux-gnu-gcc' failed with exit status 4
>>
>>  --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to protobuf+unsubscr...@googlegroups.com.
> To post to this group, send email to protobuf@googlegroups.com.
> Visit this group at http://groups.google.com/group/protobuf.
>
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to protobuf+unsubscr...@googlegroups.com.
To post to this group, send email to protobuf@googlegroups.com.
Visit this group at http://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to