Compilation fails on Pypy, not on CPython
Created originally on Bitbucket by Anonymous
Hi there,
I'm seeing a difference between Pypy (2.0beta1) and CFFI (0.4) when compiling on Linux. With Pypy, I get this error:
#!
creating /home/alvaro/Development/evy/evy/uv/__pycache__/evy
creating /home/alvaro/Development/evy/evy/uv/__pycache__/evy/uv
creating /home/alvaro/Development/evy/evy/uv/__pycache__/evy/uv/__pycache__
cc -fPIC -Wimplicit -fPIC -Wimplicit -I/home/alvaro/Development/evy/evy/uv/../../libuv/include -I/usr/local/pypy/include -c evy/uv/__pycache__/_cffi__g2f8b11b9xee66c35f.c -o /home/alvaro/Development/evy/evy/uv/__pycache__/evy/uv/__pycache__/_cffi__g2f8b11b9xee66c35f.o
cc: error: : No such file or directory
Traceback (most recent call last):
File "app_main.py", line 52, in run_toplevel
File "setup.py", line 62, in <module>
"Development Status :: 4 - Beta"]
File "/usr/local/pypy/lib-python/2.7/distutils/core.py", line 152, in setup
dist.run_commands()
File "/usr/local/pypy/lib-python/2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/usr/local/pypy/lib-python/2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/usr/local/pypy/lib-python/2.7/distutils/command/build.py", line 127, in run
self.run_command(cmd_name)
File "/usr/local/pypy/lib-python/2.7/distutils/cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "/usr/local/pypy/lib-python/2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/usr/local/pypy/lib-python/2.7/distutils/command/build_ext.py", line 344, in run
self.build_extensions()
File "/home/alvaro/Development/evy/setup_libuv.py", line 107, in build_extensions
import evy.uv.interface
File "/home/alvaro/Development/evy/evy/uv/__init__.py", line 34, in <module>
from interface import libuv, ffi, get_version
File "/home/alvaro/Development/evy/evy/uv/interface.py", line 637, in <module>
extra_link_args = extra_link_args)
File "/usr/local/pypy/site-packages/cffi/api.py", line 286, in verify
lib = self.verifier.load_library()
File "/usr/local/pypy/site-packages/cffi/verifier.py", line 61, in load_library
self.compile_module()
File "/usr/local/pypy/site-packages/cffi/verifier.py", line 49, in compile_module
self._compile_module()
File "/usr/local/pypy/site-packages/cffi/verifier.py", line 130, in _compile_module
outputfilename = ffiplatform.compile(tmpdir, self.get_extension())
File "/usr/local/pypy/site-packages/cffi/ffiplatform.py", line 25, in compile
outputfilename = _build(tmpdir, ext)
File "/usr/local/pypy/site-packages/cffi/ffiplatform.py", line 50, in _build
raise VerificationError('%s: %s' % (e.__class__.__name__, e))
VerificationError: CompileError: command 'cc' failed with exit status 1
but with CPython everything works fine:
#!
creating /home/alvaro/Development/evy/evy/uv/__pycache__/home
creating /home/alvaro/Development/evy/evy/uv/__pycache__/home/alvaro
creating /home/alvaro/Development/evy/evy/uv/__pycache__/home/alvaro/Development
creating /home/alvaro/Development/evy/evy/uv/__pycache__/home/alvaro/Development/evy
creating /home/alvaro/Development/evy/evy/uv/__pycache__/home/alvaro/Development/evy/evy
creating /home/alvaro/Development/evy/evy/uv/__pycache__/home/alvaro/Development/evy/evy/uv
creating /home/alvaro/Development/evy/evy/uv/__pycache__/home/alvaro/Development/evy/evy/uv/__pycache__
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/home/alvaro/Development/evy/evy/uv/../../libuv/include -I/usr/include/python2.7 -c /home/alvaro/Development/evy/evy/uv/__pycache__/_cffi__x2f8b11b9xee66c35f.c -o /home/alvaro/Development/evy/evy/uv/__pycache__/home/alvaro/Development/evy/evy/uv/__pycache__/_cffi__x2f8b11b9xee66c35f.o
gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro /home/alvaro/Development/evy/evy/uv/__pycache__/home/alvaro/Development/evy/evy/uv/__pycache__/_cffi__x2f8b11b9xee66c35f.o -L/home/alvaro/Development/evy/evy/uv/../../libuv -luv -o /home/alvaro/Development/evy/evy/uv/__pycache__/_cffi__x2f8b11b9xee66c35f.so -lrt
Any ideas?
Cheers