首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

wxPython.1 编译安装

本文讲述了如何在CentOS 7.1上配置安装wxPython 2.8.12.1的方法,以及可能碰到问题的解决方法.

前言

目前在网上没有现成的wxPython 2.8.12.1的rpm可以直接进行安装,能找到只有wxPython-2.8.12.0-9.el7.x86_64文件包,这个包在配合RIDE (1.5.2.1)工具使用时,会出现错误:

“Gtk-CRITICAL **: IA__gtk_widget_get_direction:assertion `GTK_IS_WIDGET (widget)' failed”

而且每次启动RIDE,工具会弹出告警框,其兼容的wxPython版本为 2.8.12.1

参考安装步骤

假设当前安装的CentOS系统为最小安装并加有"GNOME Desktop", 则可以参加下面的步骤进行

1) 安装必要的包

yum -y group install "DevelopmentTools"

yum -y install redhat-lsb-core

yum -y install epel-release

yum -y install python2-pip

yum -y install gtk2-devel binutils-devel mesa-libGL-develmesa-libGLU-devel

yum -y install python-devel

pip install robotframework

pip install robotframework-ride

2) 下载wxPython2.8.12.1源代码

wget https://netix.dl.sourceforge.net/project/wxpython/wxPython/2.8.12.1/wxPython-src-2.8.12.1.tar.bz2

3) 解压

tar xjvf wxPython-src-2.8.12.1.tar.bz2

4) 编译

cd wxPython-src-2.8.12.1/

export WXDIR=`pwd`

mkdir bld

cd bld

../configure --prefix=/opt/wx/2.8--with-gtk --with-gnomeprint --with-opengl --enable-debug --enable-debug_gdb--enable-geometry --enable-graphics_ctx --enable-sound --with-sdl--enable-mediactrl --enable-display --enable-unicode

make

5) 将编译好的共享库和工具安装到/opt/wx/2.8目录

make install

6) 将Gizmo等工具编译并安装

make -C contrib/src

make -C contrib/srcinstall

7) 使系统能找到这些共享库

echo '/opt/wx/2.8/lib' > /etc/ld.so.conf.d/wxPython-2.8.12.1.conf

ldconfig

8) 编译python相关的模块

cd $WXDIR/wxPython

python setup.py build BUILD_GLCANVAS=0BUILD_OGL=0 BUILD_STC=1 CORE_ONLY=0 USE_SWIG=0WX_CONFIG=/opt/wx/2.8/bin/wx-config

9) 安装模块,并配置wx模块

python setup.pyinstall BUILD_GLCANVAS=0 BUILD_OGL=0BUILD_STC=1 CORE_ONLY=0 USE_SWIG=0 WX_CONFIG=/opt/wx/2.8/bin/wx-config

mv /usr/lib/python2.7/site-packages/wx.pth/usr/lib64/python2.7/site-packages/wx.pth

mv /usr/lib/python2.7/site-packages/wxversion.*/usr/lib64/python2.7/site-packages/

10) 测试python和运行ride.py文件,确认无任何错误提示

# python

Python 2.7.5 (default, Apr 11 2018,07:36:10)

[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] onlinux2

Type "help","copyright", "credits" or "license" for moreinformation.

>>> import wx

>>> quit()

可能碰到的问题及解决方法

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180527G0GW1B00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券