Issue with SSL module while translating with VS2010 and 64bit
Hello All, I am trying to translate and compile pypy using Visual Studio 2010 to Win64a and I am getting the following issue with ssl. [translation:WARNING] The module '_ssl' is disabled [translation:WARNING] because importing pypy.module._ssl.interp_ssl raised CompilationError [translation:WARNING] <CompilationError err='platcheck_42.obj : error LNK2019: unresolved external symbol _SSLeay_version referenced in function _dump_section_SSL ...\flatline\\appdata\\local\\temp\\usession-default-55\\platcheck_42.exe : fatal error LNK1120: 1 unresolved externals\n'> After that the translation operation stops and the debugger kicks in. The strange part is that when I execute cl/link from a command prompt the file is compiled and linked without issues. I've compiled OpenSSL with 64bit support removing bufferoverflowu.lib which is not needed in vs2010. Regards Tasos
Hi, 2011/1/31 Tasos Vogiatzoglou <tvoglou@gmail.com>:
Hello All,
I am trying to translate and compile pypy using Visual Studio 2010 to Win64a
Wow, you are the first one! But I don't think it will work: sadly in PyPy there is the implicit assumption that a pointer can be stored in a C "long", which is wrong on win64.
and I am getting the following issue with ssl. [translation:WARNING] The module '_ssl' is disabled [translation:WARNING] because importing pypy.module._ssl.interp_ssl raised CompilationError [translation:WARNING] <CompilationError err='platcheck_42.obj : error LNK2019: unresolved external symbol _SSLeay_version referenced in function _dump_section_SSL ...\flatline\\appdata\\local\\temp\\usession-default-55\\platcheck_42.exe : fatal error LNK1120: 1 unresolved externals\n'>
After that the translation operation stops and the debugger kicks in.
But these are *warnings*. Which error do you get exactly? do you have a (red) traceback? -- Amaury Forgeot d'Arc
Hello Amaury, Yes. It's the same compiler error : [platform:ERROR] platcheck_49.obj : error LNK2019: unresolved external symbol _SSLeay_version referenced in function _dump_section_SSLEAY_VERSION [platform:ERROR] c:\users\flatline\appdata\local\temp\usession-default-56\platcheck_49.exe : fatal error LNK1120: 1 unresolved externals [translation:ERROR] Error: [translation:ERROR] Traceback (most recent call last): [translation:ERROR] File "translate.py", line 268, in main [translation:ERROR] default_goal='compile') [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\translator\driver.py", line 831, in from_targetspec [translation:ERROR] spec = target(driver, args) [translation:ERROR] File "targetpypystandalone.py", line 229, in target [translation:ERROR] return self.get_entry_point(config) [translation:ERROR] File "targetpypystandalone.py", line 240, in get_entry_point [translation:ERROR] space = make_objspace(config) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\tool\option.py", line 48, in make_objspace [translation:ERROR] space = Space(config) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\interpreter\baseobjspace.py", line 280, in __init__ [translation:ERROR] self.initialize() [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\objspace\std\objspace.py", line 78, in initialize [translation:ERROR] self.make_builtins() [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\interpreter\baseobjspace.py", line 490, in make_builtins [translation:ERROR] self.install_mixedmodule(mixedname, installed_builtin_modules) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\interpreter\baseobjspace.py", line 529, in install_mixedmodule [translation:ERROR] modname = self.setbuiltinmodule(mixedname) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\interpreter\baseobjspace.py", line 370, in setbuiltinmodule [translation:ERROR] None, None, ["Module"]).Module [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\module\_hashlib\__init__.py", line 2, in <module> [translation:ERROR] from pypy.module._hashlib.interp_hashlib import algorithms [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\module\_hashlib\interp_hashlib.py", line 9, in <module> [translation:ERROR] from pypy.rlib import ropenssl [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\rlib\ropenssl.py", line 76, in <module> [translation:ERROR] for k, v in rffi_platform.configure(CConfig).items(): [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\rpython\tool\rffi_platform.py", line 201, in configure [translation:ERROR] infolist = list(run_example_code(writer.path, eci)) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\rpython\tool\rffi_platform.py", line 685, in run_example_code [translation:ERROR] output = build_executable_cache(files, eci) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\tool\gcc_cache.py", line 27, in build_executable_cache [translation:ERROR] result = platform.execute(platform.compile(c_files, eci) ) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\translator\platform\__init__.py", line 52, in compile [translation:ERROR] return self._finish_linking(ofiles, eci, outputfilename, standalone) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\translator\platform\__init__.py", line 194, in _finish_linking [translation:ERROR] return self._link(cc_link, ofiles, largs, standalone, exe_name) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\translator\platform\windows.py", line 176, in _link [translation:ERROR] self._execute_c_compiler(self.link, args, exe_name) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\translator\platform\__init__.py", line 118, in _execute_c_compiler [translation:ERROR] self._handle_error(returncode, stderr, stdout, outname) [translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\translator\platform\windows.py", line 199, in _handle_error [translation:ERROR] raise CompilationError(stdout, stderr) [translation:ERROR] CompilationError: <CompilationError err='platcheck_49.obj : error LNK2019: unresolved external symbol _SSLeay_version referenced in function _dump_section_SSL...\flatline\\appdata\\local\\temp\\usession-default-56\\platcheck_49.exe : fatal error LNK1120: 1 unresolved externals\n'> Regards Tasos Vogiatzoglou On Mon, Jan 31, 2011 at 11:36 PM, Amaury Forgeot d'Arc <amauryfa@gmail.com> wrote:
Hi,
2011/1/31 Tasos Vogiatzoglou <tvoglou@gmail.com>:
Hello All,
I am trying to translate and compile pypy using Visual Studio 2010 to Win64a
Wow, you are the first one! But I don't think it will work: sadly in PyPy there is the implicit assumption that a pointer can be stored in a C "long", which is wrong on win64.
and I am getting the following issue with ssl. [translation:WARNING] The module '_ssl' is disabled [translation:WARNING] because importing pypy.module._ssl.interp_ssl raised CompilationError [translation:WARNING] <CompilationError err='platcheck_42.obj : error LNK2019: unresolved external symbol _SSLeay_version referenced in function _dump_section_SSL ...\flatline\\appdata\\local\\temp\\usession-default-55\\platcheck_42.exe : fatal error LNK1120: 1 unresolved externals\n'>
After that the translation operation stops and the debugger kicks in.
But these are *warnings*. Which error do you get exactly? do you have a (red) traceback?
-- Amaury Forgeot d'Arc
2011/1/31 Tasos Vogiatzoglou <tvoglou@gmail.com>:
Hello Amaury,
Yes. It's the same compiler error :
[translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\module\_hashlib\interp_hashlib.py",
Ah, indeed the _hashlib module should be disabled when openssl cannot be processed. I'll try to fix it, in the meantime I suggest you to skip this module: python translate.py targetpypystandalone --withoutmod-_hashlib -- Amaury Forgeot d'Arc
Amaury, Isn't there a way to fix the SSL issue? I was looking checking for name decoration issues or call-conv issues but there seems none. Is there any guess why it fails from the translation procedure but works when I execute the commands in cmd prompt ? (I also tried disabling the env processing that is happening, leaving POpen to get the default one but nothing :( ) Thanks, Tasos On Mon, Jan 31, 2011 at 11:44 PM, Amaury Forgeot d'Arc <amauryfa@gmail.com> wrote:
2011/1/31 Tasos Vogiatzoglou <tvoglou@gmail.com>:
Hello Amaury,
Yes. It's the same compiler error :
[translation:ERROR] File "c:\Users\flatline\development\pypy\src\pypy\module\_hashlib\interp_hashlib.py",
Ah, indeed the _hashlib module should be disabled when openssl cannot be processed. I'll try to fix it, in the meantime I suggest you to skip this module:
python translate.py targetpypystandalone --withoutmod-_hashlib
-- Amaury Forgeot d'Arc
participants (2)
-
Amaury Forgeot d'Arc
-
Tasos Vogiatzoglou