Chinaunix首页 | 论坛 | 博客
  • 博客访问: 667036
  • 博文数量: 102
  • 博客积分: 2241
  • 博客等级: 大尉
  • 技术积分: 1670
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-08 10:08
文章分类

全部博文(102)

文章存档

2013年(6)

2012年(15)

2011年(81)

分类: Python/Ruby

2011-07-12 22:27:42


wxpython 2.8.12.0 exe 安装包,编译时指定的 manifest 指定了 Microsoft.VC90.CRT' version=9.0.21022.8,造成使用 c 执行嵌入的 python 脚本,在 import wx 时出现 R6034错误

以下使用 VC2010 Express 重新编译步骤


  • 下载源码,查看编译说明
从 下载 wxPython-src-2.8.12.0.tar.bz2, 解压
    查看 编译及安装 文档
    wxPython\docs\BUILD.html
    wxPython\docs\INSTALL.html


  • 设置环境变量
f:\msvc10\VC\vcvarsall.bat
f:
set WXDIR=f:\dev\wxPython-src-2.8.12.0
set WXWIN=%WXDIR%


  • 编译 wxWidgets
rem     编译 wxWidgets, 编译参数参考 wxPython\docs\BUILD.html

cd %WXDIR%\build\msw
nmake -f makefile.vc OFFICIAL_BUILD=1 SHARED=1 MONOLITHIC=0 USE_OPENGL=1 USE_GDIPLUS=1 UNICODE=1 MSLU=1 DEBUG_FLAG=1 CXXFLAGS=/D__NO_VC_CRTDBG__ WXDEBUGFLAG=h BUILD=release

rem     windows 下使用vc编译,默认没有编译 stc 和 gizmos(注意!!)
cd %WXDIR%\contrib\build\gizmos
nmake -f makefile.vc OFFICIAL_BUILD=1 SHARED=1 MONOLITHIC=0 USE_OPENGL=1 USE_GDIPLUS=1 UNICODE=1 MSLU=1 DEBUG_FLAG=1 CXXFLAGS=/D__NO_VC_CRTDBG__ WXDEBUGFLAG=h BUILD=release

cd %WXDIR%\contrib\build\stc
nmake -f makefile.vc OFFICIAL_BUILD=1 SHARED=1 MONOLITHIC=0 USE_OPENGL=1 USE_GDIPLUS=1 UNICODE=1 MSLU=1 DEBUG_FLAG=1 CXXFLAGS=/D__NO_VC_CRTDBG__ WXDEBUGFLAG=h BUILD=release


  • 编译 wxPython
rem     编译 wxPython
rem     如果使用vc2010,设置 set VS90COMNTOOLS=%VS100COMNTOOLS%,否则提示找不到 vcvarsall.bat

cd %WXDIR%\wxPython

rem     加入 UNDEF_NDEBUG=0,默认为1,
rem     wxWidgets编译时未打开DEBUG,wxPython 使用DEBUG编译无法通过(注意!!)
python setup.py build_ext --inplace MONOLITHIC=0 UNICODE=1 UNDEF_NDEBUG=0



  • 安装
rem     安装,如果 python lib\site-packages 下已经有使用 exe 安装的 wx,先改名。
rem     python install 命令参数要与编译时相同,否则会重新编译(注意!!)
python setup.py build_ext --inplace MONOLITHIC=0 UNICODE=1 UNDEF_NDEBUG=0 install

rem     复制 dll
set PYTHONLIBSITE=f:\ux\python26\Lib\site-packages
copy %WXWIN%\lib\vc_dll\wx*h_*.dll %PYTHONLIBSITE%\wx-2.8-msw-unicode\wx

rem     使用 python install 安装wx,只会复制py文件,其它文件不会复制到库目录 (注意!!)
rem     建议把整个wx目录复制过去
copy wx\lib\myole4ax.idl  %PYTHONLIBSITE%\wx-2.8-msw-unicode\wx\lib
copy wx\lib\myole4ax.tlb  %PYTHONLIBSITE%\wx-2.8-msw-unicode\wx\lib
copy wxversion\wxversion.py  %PYTHONLIBSITE%\
copy wx\*.pyd  %PYTHONLIBSITE%\wx-2.8-msw-unicode\wx



end.



阅读(6523) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

tianbianfei2011-07-13 13:20:00

在工作之余,也放松一下吧,给大家推荐一款android游戏,个人觉得挺好玩:http://doumiw.com/market/software!getSW.action?swId=9661