[pypy-issue] Issue #2364: gctransformer issue while trying to translate pypy to ARM (pypy/pypy)
Dewald Pretorius
issues-reply at bitbucket.org
Tue Aug 9 21:13:30 EDT 2016
New issue 2364: gctransformer issue while trying to translate pypy to ARM
https://bitbucket.org/pypy/pypy/issues/2364/gctransformer-issue-while-trying-to
Dewald Pretorius:
I've followed the guide from here: http://rpython.readthedocs.io/en/latest/arm.html#arm
All steps were successful, up to "pypy /home/username/pypy2-v5.3.1-src/rpython/bin/rpython -O1 --platform=arm target.py"
which fails as follows:
root at ubuntu:/srv/chroot/precise_arm# pypy /home/username/pypy2-v5.3.1-src/rpython/bin/rpython -O1 --platform=arm target.py
[translation:info] 2.7.8 (2.5.0+dfsg-2, Feb 12 2015, 05:23:41)
[PyPy 2.5.0 with GCC 4.9.2]
[platform:msg] Set platform with 'arm' cc=None, using cc='gcc', version='Unknown'
[translation:info] Translating target as defined by target
Traceback (most recent call last):
File "app_main.py", line 75, in run_toplevel
File "/home/username/pypy2-v5.3.1-src/rpython/bin/rpython", line 20, in <module>
main()
File "/home/username/pypy2-v5.3.1-src/rpython/translator/goal/translate.py", line 216, in main
targetspec_dic, translateconfig, config, args = parse_options_and_load_target()
File "/home/username/pypy2-v5.3.1-src/rpython/translator/goal/translate.py", line 173, in parse_options_and_load_target
set_opt_level(config, translateconfig.opt)
File "/home/username/pypy2-v5.3.1-src/rpython/config/translationoption.py", line 379, in set_opt_level
config.translation.gc = config.translation.gc
File "/home/username/pypy2-v5.3.1-src/rpython/config/config.py", line 68, in __setattr__
self.setoption(name, value, 'user')
File "/home/username/pypy2-v5.3.1-src/rpython/config/config.py", line 112, in setoption
child.setoption(self, value, who)
File "/home/username/pypy2-v5.3.1-src/rpython/config/config.py", line 271, in setoption
homeconfig.setoption(name, reqvalue, who2)
File "/home/username/pypy2-v5.3.1-src/rpython/config/config.py", line 111, in setoption
'option %s' % (value, name))
ConflictConfigError: cannot override value to ref for option gctransformer
I'd really appreciate any assistance as our tests have demonstrated a seven factor speed increase in using pypy over python2.7.
I have made sure that I have all the dependencies installed that I need to build pypy from source - by building pypy from source.
I've also tried translating the full interpreter
root at ubuntu:/home/username/pypy2-v5.3.1-src/pypy/goal# /home/username/pypy2-v5.3.1-src/pypy/goal/pypy-c /home/username/pypy2-v5.3.1-src/rpython/bin/rpython -Ojit --platform=arm --gcrootfinder=shadowstack --jit-backend=arm targetpypystandalone.py
[translation:info] 2.7.10 (7e8df3df96417c16c2d55b41352ec82c9c69c978, Aug 09 2016, 00:24:37)
[PyPy 5.3.1 with GCC 4.9.2]
[platform:msg] Set platform with 'arm' cc=None, using cc='gcc', version='Unknown'
[translation:info] Translating target as defined by targetpypystandalone
[platform:execute] sb2 -t ARM gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-pypy2.7-v5.3.1-13/gcctest.c -o /tmp/usession-release-pypy2.7-v5.3.1-13/gcctest.o
[platform:execute] sb2 -t ARM gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused /tmp/usession-release-pypy2.7-v5.3.1-13/gcctest.c -o /tmp/usession-release-pypy2.7-v5.3.1-13/gcctest.o
[platform:Error] sb2: Error: Invalid target specified, aborting.
Traceback (most recent call last):
File "/home/username/pypy2-v5.3.1-src/rpython/bin/rpython", line 20, in <module>
main()
File "/home/username/pypy2-v5.3.1-src/rpython/translator/goal/translate.py", line 216, in main
targetspec_dic, translateconfig, config, args = parse_options_and_load_target()
File "/home/username/pypy2-v5.3.1-src/rpython/translator/goal/translate.py", line 155, in parse_options_and_load_target
targetspec_dic = load_target(targetspec)
File "/home/username/pypy2-v5.3.1-src/rpython/translator/goal/translate.py", line 97, in load_target
mod = __import__(specname)
File "targetpypystandalone.py", line 6, in <module>
from pypy.interpreter import gateway
File "/home/username/pypy2-v5.3.1-src/pypy/interpreter/gateway.py", line 19, in <module>
from pypy.interpreter.eval import Code
File "/home/username/pypy2-v5.3.1-src/pypy/interpreter/eval.py", line 6, in <module>
from pypy.interpreter.baseobjspace import W_Root
File "/home/username/pypy2-v5.3.1-src/pypy/interpreter/baseobjspace.py", line 6, in <module>
from rpython.rlib.debug import make_sure_not_resized
File "/home/username/pypy2-v5.3.1-src/rpython/rlib/debug.py", line 9, in <module>
from rpython.rtyper.lltypesystem import rffi
File "/home/username/pypy2-v5.3.1-src/rpython/rtyper/lltypesystem/rffi.py", line 540, in <module>
NUMBER_TYPES = setup()
File "/home/username/pypy2-v5.3.1-src/rpython/rtyper/lltypesystem/rffi.py", line 529, in setup
names = populate_inttypes()
File "/home/username/pypy2-v5.3.1-src/rpython/rtyper/lltypesystem/rffi.py", line 523, in populate_inttypes
platform.populate_inttypes(populatelist)
File "/home/username/pypy2-v5.3.1-src/rpython/rtyper/tool/rfficache.py", line 95, in populate_inttypes
sizes = sizeof_c_types(names_c, **kwds)
File "/home/username/pypy2-v5.3.1-src/rpython/rtyper/tool/rfficache.py", line 45, in sizeof_c_types
answer = ask_gcc(question, **kwds)
File "/home/username/pypy2-v5.3.1-src/rpython/rtyper/tool/rfficache.py", line 35, in ask_gcc
return build_executable_cache([c_file], eci, ignore_errors=ignore_errors)
File "/home/username/pypy2-v5.3.1-src/rpython/tool/gcc_cache.py", line 28, in build_executable_cache
result = platform.execute(platform.compile(c_files, eci))
File "/home/username/pypy2-v5.3.1-src/rpython/translator/platform/__init__.py", line 54, in compile
ofiles = self._compile_o_files(cfiles, eci, standalone)
File "/home/username/pypy2-v5.3.1-src/rpython/translator/platform/__init__.py", line 76, in _compile_o_files
ofiles.append(self._compile_c_file(self.cc, cfile, compile_args))
File "/home/username/pypy2-v5.3.1-src/rpython/translator/platform/posix.py", line 40, in _compile_c_file
cwd=str(cfile.dirpath()))
File "/home/username/pypy2-v5.3.1-src/rpython/translator/platform/arm.py", line 47, in _execute_c_compiler
self._handle_error(returncode, stderr, stdout, outname)
File "/home/username/pypy2-v5.3.1-src/rpython/translator/platform/__init__.py", line 152, in _handle_error
raise CompilationError(stdout, stderr)
CompilationError: CompilationError(err="""
sb2: Error: Invalid target specified, aborting.
""")
Any advise would be really appreciated.
More information about the pypy-issue
mailing list