Re Armin and fijal

I download last version of PyPy source pypy-pypy-4a38b43757e3.zip from https://bitbucket.org/pypy/pypy
in MinGW32 (mingw-get-inst-20120426.exe), run:
        pypy/bin/py.py --cc=mingw32-gcc
get error:
        pypy.translator.platform.CompilationError: CompilationError(err="""
                e:\tem\usession-default-0\gcctest.c: In function 'main':
e:\tem\usession-default-0\gcctest.c:25:51: error: 'uintptr_t' undeclared (first use in this function)

this is how I fix this bug:

diff -crN pypy-pypy-4a38b43757e3/pypy/rlib/rposix.py pypy-pypy-4a38b43757e3.bookaa/pypy/rlib/rposix.py
*** pypy-pypy-4a38b43757e3/pypy/rlib/rposix.py  Tue May 22 14:03:20 2012
--- pypy-pypy-4a38b43757e3.bookaa/pypy/rlib/rposix.py Wed May 23 20:25:10 2012
***************
*** 75,80 ****
--- 75,85 ----
             return 0;
         }
     ''',]
+     from pypy.translator import platform
+     if platform.platform.cc.startswith('mingw32'):
+         separate_module_sources[0] = """
+             #include <stdint.h> /* for intptr_t */
+         """ + separate_module_sources[0]
     export_symbols = ['_PyVerify_fd']
 else:
     separate_module_sources = []
diff -crN pypy-pypy-4a38b43757e3/pypy/rpython/tool/rfficache.py pypy-pypy-4a38b43757e3.bookaa/pypy/rpython/tool/rfficache.py *** pypy-pypy-4a38b43757e3/pypy/rpython/tool/rfficache.py Tue May 22 14:03:20 2012 --- pypy-pypy-4a38b43757e3.bookaa/pypy/rpython/tool/rfficache.py Wed May 23 20:38:08 2012
***************
*** 13,19 ****
 from pypy.tool.gcc_cache import build_executable_cache

 def ask_gcc(question, add_source=""):
!     includes = ['stdlib.h', 'stdio.h', 'sys/types.h']
     if os.name != 'nt':
         includes += ['inttypes.h']
     include_string = "\n".join(["#include <%s>" % i for i in includes])
--- 13,23 ----
 from pypy.tool.gcc_cache import build_executable_cache

 def ask_gcc(question, add_source=""):
!     from pypy.translator import platform
!     if platform.platform.cc.startswith('mingw32'):
!         includes = ['stdlib.h', 'stdio.h', 'sys/types.h', 'stdint.h']
!     else:
!         includes = ['stdlib.h', 'stdio.h', 'sys/types.h']
     if os.name != 'nt':
         includes += ['inttypes.h']
     include_string = "\n".join(["#include <%s>" % i for i in includes])
diff -crN pypy-pypy-4a38b43757e3/pypy/translator/platform/posix.py pypy-pypy-4a38b43757e3.bookaa/pypy/translator/platform/posix.py *** pypy-pypy-4a38b43757e3/pypy/translator/platform/posix.py Tue May 22 14:03:20 2012 --- pypy-pypy-4a38b43757e3.bookaa/pypy/translator/platform/posix.py Wed May 23 20:41:12 2012
***************
*** 55,60 ****
--- 55,62 ----

         if relto:
             response_file = relto.bestrelpath(response_file)
+         if self.cc.startswith('mingw32'):
+ return ["-Wl,--export-all-symbols,--version-script=%s" % (response_file,)] return ["-Wl,--export-dynamic,--version-script=%s" % (response_file,)]

     def _link(self, cc, ofiles, link_args, standalone, exe_name):

Attachment: bookaa.dif
Description: Binary data

_______________________________________________
pypy-dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-dev

Reply via email to