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%
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
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.
阅读(6517) | 评论(1) | 转发(0) |