Details

    • Type: Task
    • Status: Resolved
    • Priority: Blocker
    • Resolution: Duplicate
    • Affects Version/s: 1.0.0
    • Fix Version/s: None
    • Component/s: library
    • Security Level: Public
    • Labels:
    • Environment:
      PyPy 2.0.2 with GCC 4.4.7 20120313 (Red Hat 4.4.7-3)

      Description

      Cannot run on PyPy.
      --------------------------
      Installation looks good.

      (pypy)[root@l ~]# pip install couchbase
      Downloading/unpacking couchbase
      Downloading couchbase-1.0.0.tar.gz (140kB): 140kB downloaded
      Running setup.py egg_info for package couchbase

      Installing collected packages: couchbase
      Running setup.py install for couchbase
      building 'couchbase._libcouchbase' extension
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/argument.c -o build/temp.linux-x86_64-2.7/src/argument.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/exceptions.c -o build/temp.linux-x86_64-2.7/src/exceptions.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/ext.c -o build/temp.linux-x86_64-2.7/src/ext.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/result.c -o build/temp.linux-x86_64-2.7/src/result.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/opresult.c -o build/temp.linux-x86_64-2.7/src/opresult.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/callbacks.c -o build/temp.linux-x86_64-2.7/src/callbacks.o
      src/callbacks.c: In function 'get_common_objects':
      src/callbacks.c:148: warning: implicit declaration of function 'PyErr_WarnExplicit'
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/convert.c -o build/temp.linux-x86_64-2.7/src/convert.o
      src/convert.c: In function 'encode_common':
      src/convert.c:100: warning: implicit declaration of function 'PyByteArray_Check'
      src/convert.c:146: warning: implicit declaration of function 'PyByteArray_AS_STRING'
      src/convert.c:146: warning: assignment makes pointer from integer without a cast
      src/convert.c:147: warning: implicit declaration of function 'PyByteArray_GET_SIZE'
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/connection.c -o build/temp.linux-x86_64-2.7/src/connection.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/store.c -o build/temp.linux-x86_64-2.7/src/store.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/constants.c -o build/temp.linux-x86_64-2.7/src/constants.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/multiresult.c -o build/temp.linux-x86_64-2.7/src/multiresult.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/miscops.c -o build/temp.linux-x86_64-2.7/src/miscops.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/typeutil.c -o build/temp.linux-x86_64-2.7/src/typeutil.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/oputil.c -o build/temp.linux-x86_64-2.7/src/oputil.o
      src/oputil.c: In function 'pycbc_oputil_check_sequence':
      src/oputil.c:198: warning: implicit declaration of function 'PyByteArray_Check'
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/get.c -o build/temp.linux-x86_64-2.7/src/get.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/arithmetic.c -o build/temp.linux-x86_64-2.7/src/arithmetic.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/http.c -o build/temp.linux-x86_64-2.7/src/http.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/htresult.c -o build/temp.linux-x86_64-2.7/src/htresult.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/ctranscoder.c -o build/temp.linux-x86_64-2.7/src/ctranscoder.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/observe.c -o build/temp.linux-x86_64-2.7/src/observe.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/viewrow/viewrow.c -o build/temp.linux-x86_64-2.7/src/viewrow/viewrow.o
      cc -O2 -fPIC -Wimplicit -I/var/pypy/include -c src/contrib/jsonsl/jsonsl.c -o build/temp.linux-x86_64-2.7/src/contrib/jsonsl/jsonsl.o
      cc -shared build/temp.linux-x86_64-2.7/src/argument.o build/temp.linux-x86_64-2.7/src/exceptions.o build/temp.linux-x86_64-2.7/src/ext.o build/temp.linux-x86_64-2.7/src/result.o build/temp.linux-x86_64-2.7/src/opresult.o build/temp.linux-x86_64-2.7/src/callbacks.o build/temp.linux-x86_64-2.7/src/convert.o build/temp.linux-x86_64-2.7/src/connection.o build/temp.linux-x86_64-2.7/src/store.o build/temp.linux-x86_64-2.7/src/constants.o build/temp.linux-x86_64-2.7/src/multiresult.o build/temp.linux-x86_64-2.7/src/miscops.o build/temp.linux-x86_64-2.7/src/typeutil.o build/temp.linux-x86_64-2.7/src/oputil.o build/temp.linux-x86_64-2.7/src/get.o build/temp.linux-x86_64-2.7/src/arithmetic.o build/temp.linux-x86_64-2.7/src/http.o build/temp.linux-x86_64-2.7/src/htresult.o build/temp.linux-x86_64-2.7/src/ctranscoder.o build/temp.linux-x86_64-2.7/src/observe.o build/temp.linux-x86_64-2.7/src/viewrow/viewrow.o build/temp.linux-x86_64-2.7/src/contrib/jsonsl/jsonsl.o -lcouchbase -o build/lib.linux-x86_64-2.7/couchbase/_libcouchbase.pypy-20.so

      Successfully installed couchbase
      Cleaning up...
      -------------------------

      It fails on Library import.

      ImportError: unable to load extension module '/var/pypy/site-packages/couchbase/_libcouchbase.pypy-20.so': /var/pypy/site-packages/couchbase/_libcouchbase.pypy-20.so: undefined symbol: PyErr_WarnExplicit

      -----------------------

      It runs well on Python 2.7 (without PyPy) on same machine.

        Issue Links

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

          Hide
          mnunberg Mark Nunberg added a comment -

          PyPy uses a different underlying implementation which is currently not supported. There are other issues besides undefined symbols which prevent the extension from functioning properly on that platform.

          Show
          mnunberg Mark Nunberg added a comment - PyPy uses a different underlying implementation which is currently not supported. There are other issues besides undefined symbols which prevent the extension from functioning properly on that platform.
          Hide
          mnunberg Mark Nunberg added a comment -

          Duplicate of PYCBC-144

          Show
          mnunberg Mark Nunberg added a comment - Duplicate of PYCBC-144

            People

            • Assignee:
              mnunberg Mark Nunberg
              Reporter:
              jaigupta Jai Gupta
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes