一半君的总结纸

听话只听一半君

Maya 2011-2017的PyQt Windows7 Linux Mac OSX 国外大神编译版大合集

maya 版本号 和 python 版本号对应如下表所示

Maya Python Qt pymel Windows OSX Linux
2017 2.7.11 5.6.1 1.0.9 Visual Studio 2012 Update 4 Mavericks 10.9.5, Xcode 6.1.1 with SDK 10.9, clang with libc++ built on RHEL 6.5 with Red Hat Developer Toolset 2.1 which has a system default gcc 4.8.2 compiler. If additional C++11 features are required, use Red Hat’s Developer Toolset 2.1
2016 2.7.6 4.8.6 1.0.7 Visual Studio 2012 Update 4 Mavericks 10.9.5, Xcode 6.1.1 with SDK 10.9, clang with libstdc++ gcc 4.4.7
2015 2.7.3 4.8.5 1.0.6 Visual Studio 2012 Update 4 Mountain Lion 10.8.5, Xcode 5.0.2 with SDK 10.8 (Mountain Lion), clang with libstdc++ gcc 4.1.2
2014 2.7.3 4.8.2 1.0.5 Visual Studio 2010 SP1 Snow Leopard 10.6.8, Xcode 3.2.1, gcc 4.2.1 gcc 4.1.2
2013 2.6.4 4.7.1 1.0.4 Visual Studio 2010 SP1 Snow Leopard 10.6.8, Xcode 3.2.1, gcc 4.2.1 gcc 4.1.2
2012 2.6.4 4.7.1 1.0.3 Visual Studio 2008 SP1 Leopard 10.5.6+, Xcode 3.1.2 gcc 4.1.2
2011 2.6.4 4.5.3 1.0.0 Visual Studio 2008 SP1 Leopard 10.5.6+, Xcode 3.1.2 gcc 4.1.2
2010 2.6.1 VC8 with SP1 and Template Hot fix Mac OS X PPC|Intel: Xcode 2.4.1 gcc 4.1.2
2009 2.5.1 VC8 with SP1 and Template Hot fix Mac OS X PPC|Intel: Xcode 2.4.1 gcc 4.1.2
2008 2.5.1 VC8 with SP1 and Template Hot fix Mac OS X PPC|Intel: Xcode 2.4.1 gcc 4.1.2
8.5 2.4.3 Microsoft Visual Studio 2005 gcc 4.0.1(build 5341) or Xcode 2.3 (using the same gcc) gcc 4.0.2 on RHEL 4 WS U4

搜集来的对应maya各个版本的安装包
内含最新版pyqt 4.9.5 SIP 4.1.4 for maya 2013 x64 linux版下载 CentOS 6.3 x64下编译的
(PyQt 4.9.5 compiled for CentOS 6.3 x64 Maya 2013)

安装位置可以自行决定

  • 直接安到Maya安装目录下的site packages目录下
  • 安到默认的python26/lib/site-packages目录下 然后把.pth文件放到maya/python/lib/site-packages
  • 安到任意一个地方 然后把下面的加到sitecustomize.py 或者 userSetup.py 或者script的最前面
import site
site.addsitedir(r’PATH/TO/PYQT-SITE’)
  • 随便哪里 只要把路径加到PYTHONPATH环境变量里就可以 比如在maya.env里加

pyside :

Maya PySide Qt comment
2017 2.0.0~alpha0 5.6.1 自带
2016 1.2.0 4.8.6 自带
2015 1.2 4.8.5 自带
2014 1.1.1 4.8.2 自带

pyqt :

Maya PyQt Qt SIP windows Linux Mac
2017 5.6.1 lz自己编译的,用不了别打我
PyQt5-5.8.2-gpl-Py2.7-Qt5.6.1-x64.exe
2016 4.8.6 PyQt4-4.11.4-gpl-Py2.7-Qt4.8.6-x64-maya-2016.exeqt-plugins-qt-4.8.6-phonon-sqldrivers.rar
2015 4.10.4 4.8.5 4.15.5 PyQt4-4.10.4-gpl-Py2.7-Qt4.8.5-x64-riverbank(riverbank官网下的)  PyQt4.11.1-Py2.7-Qt-4.8.5-maya2015-x64.tar.gz
2014 4.10 4.8.2 4.14.5 PyQt4-4.10-gpl-Py2.7-Qt4.8.2-x64.exe
sqldrivers_PyQt_PySide
_Maya2014x64.zip

lz自己编译的,用不了别打我PyQt4-4.11.1-gpl-Py2.7-Qt4.8.2-x64-maya-2014
PyQt4.10-SIP.4.14.5-gpl-maya2014-mac-10.8.zip
2013 4.9.1 4.7.1 4.13.2 PyQt-4.9.1-maya2013-win64.exe 这个是lz自己编译的 用不了不要喷我 centOS 6.3 PyQt4.9.5-Py2.6-Qt-4.7.1-gpl-maya2013-x64.tar.gz MyQt4.9.4-maya2013-x64-osx-10.6.pkg
2012 4.8.3 4.7.1 4.12.1 PyQt-Py2.6-x64-gpl-4.8.3-1.exe
PyQt-Py2.6-x86-gpl-4.8.3-1.exe
maya2012_PyQt4.tar.gz MyQt4.9.4-maya2012-x64-osx-10.6.pkg
MyQt4.8.6-maya2012-x64-osx-10.7.pkg
2011 4.7.3 4.5.3 4.10.2 PyQt-Py2.6-x64-gpl-4.7.3-1.exe
PyQt-Py2.6-x86-gpl-4.7.3-1.exe
maya2011_PyQt4.tar.gz MyQt4.7.4-maya2011-x64-osx-10.6.pkg
MyQt4.8.6-maya2013-x64-osx-10.7.pkg
2009 maya2009_PyQt4.tar.gz

如果想自己编译,可以参考如下地址:

www.kurianos.com/wordpress/?p=551
www.justinfx.com/2011/11/09/installing-pyqt4-for-maya-2012-osx/
blarg.robertkist.com/?p=98
nathanhorne.com/?p=322
fredrikaverpil.tumblr.com/post/54754337481
www.jason-parks.com/artoftech/?p=579
around-the-corner.typepad.com/adn/2013/04/building-sip-and-pyqt-for-maya-2014.html
nathanhorne.com/?p=485
www.justinfx.com/2011/11/20/mixing-pyqt4-widgets-and-maya-ui-objects/
tech-artists.org/forum/showthread.php?3035-PySide-in-Maya-2013
plutometro.blogspot.sg/2013/06/compiling-x64-pyside-using-vs2010.html

ps: 至于为啥有时候你直接下riverbank官网的装也可以用,比如说现在是Maya 2014你去下官网PyQt4-4.10.3-gpl-Py2.7-Qt4.8.5-x64.exe 这个版本装上是可以直接用的,那是因为在最近恰好官网提供的预编译版本里使用的Qt版本刚好和Maya里使用的Qt版本是搭配的(lz瞎猜的),也许过了几个月以后,官网就没有提供这个版本了(通常官网更新频率较快,而官网并不提供所有版本的预编译安装文件,所以经常发生的是官网的版本过新,造成Maya里用不了,所以才有上面的收集集合,当然linux下的预编译版本官网是没有提供的,如果不幸的你从repo里用yum或者apt-get装的binary恰好不能用,那你只能自己编译或者下别人编译好的(.rpm)了)

查看有没有老点的版本可用

yum list --showduplicates pyqt4

举例:(而已,不要拿glibc乱试)

> sudo yum list --showduplicates glibc
...
Available Packages
glibc.i686                   2.12-1.107.el6                           base
glibc.x86_64                 2.12-1.107.el6                           base
glibc.i686                   2.12-1.107.el6_4.2                       update
glibc.x86_64                 2.12-1.107.el6_4.2                       update
glibc.i686                   2.12-1.107.el6_4.4                       update
glibc.x86_64                 2.12-1.107.el6_4.4                       update

# 假设你想装老版的倒数第3个,你可以
yum install glibc.x86_64-2.12-1.107.el6_4.2

# 如果已经安装了新版,可能需要加上 --allow-downgrade
yum --allow-downgrade install glibc.x86_64-2.12-1.107.el6_4.2

# 如果想以后升级都不要升他,可以用 versionlock 插件
yum install yum-versionlock
yum versionlock glibc

ps: 2015的自助编译说明在

c:\Program Files\Autodesk\Maya2015\support\opensource\Qt

pss: lz没找到Linux下的别人编译好的2014用的pyqt,准备自己搞个试试.

reference:
显示python version

import sys
sys.version
sys.version_info

如何查看pyqt及用来编译PyQt的qt version

import PyQt4.QtCore as QtCore
QtCore.PYQT_VERSION_STR
QtCore.QT_VERSION_STR

# get the current running Qt version
QtCore.qVersion()

如何查看pymel version

import pymel
pymel.__version__

如何查看Maya version

import maya.cmds as cmds
cmds.about(version=True)

如何查看Maya的 qt version

import maya.cmds as cmds
cmds.about(qtVersion=True)
# 或者人肉去看bin目录下的qt的dll文件的版本号

如何查看PySide及用来编译PySide的qt version

import PySide
# Prints PySide version
print PySide.__version__

# Gets a tuple with each version component
print PySide.__version_info__

# Prints the Qt version used to compile PySide
print PySide.QtCore.__version__

# Gets a tuple with each version components of Qt used to compile PySide
print PySide.QtCore.__version_info__

# get the current running Qt version
print PySide.QtCore.qVersion()

如何查看sip version

import sip
sip.SIP_VERSION_STR
Advertisements

7 responses to “Maya 2011-2017的PyQt Windows7 Linux Mac OSX 国外大神编译版大合集

  1. 第十四層藍 九月 26, 2013 @ 6:12 下午

    謝謝~~這個很實用!

  2. xracz 五月 27, 2014 @ 11:20 上午

    感谢,非常实用!我想整理成一个Maya PyQt Lib,按平台、版本的文件夹存放好,然后在userSetup.py里写入方法让maya自行调用对应的版本

    • 屌丝男 五月 28, 2014 @ 12:09 下午

      公司里的方法是各种软件都是用wrapper开的,比如敲maya其实运行的是个script,根据json配置文件和env var来决定开哪个版本的maya,以及有哪些插件(配置文件可以自动继承,有个python的package来读取这些json文件,配置有个总的,但是也可以根据项目来设override,当你开了项目xyz的maya,比如是2014,他就设置好了各种2014版的插件,和2014″能”用的pyqt了(设了PYTHONPATH估计) )

      • xracz 五月 28, 2014 @ 12:27 下午

        高端!能否写一篇更详细的文章,分享些snippet

      • 屌丝男 五月 28, 2014 @ 12:56 下午

        没法贴出来除非你想(被鞭尸 坐牢 罚款 鞭刑15下 并且被全球特效公司的hr放在do-not-hire列表上)

        他们现在在用的方法肯定不是最好的 我觉得他们也是”憋”出来的 你用自己的方式想下 反正最终目的是要让普通用户直接敲个maya就能自动开项目所需的”恰当”版本的maya和插件们 以及pyqt这种python的packages要怎么做到

        公司里因为是linux的 所以都是在敲命令 如果是windows的 你是不是可以考虑做个launcher什么的 比如像环球数码那样任务栏右侧有个图标 右击之后可以选项目名字 然后在那里开maya(当然他开之前也是设好了各种需要的env var的

        如果想要这种”带继承”的灵活的配置文件 我也没想到还有什么好些的方法

        现在这里是比如总配置文件里写到framerate=24 那你所有项目的各种脚本工具或maya等去读这个参数的时候都拿到的是24 除非在项目里你又设定了framerate是30 那么只有这个”特别”的项目会是30

        这样好处是”总”的配置文件只有一份 要全改的话可以只改那一处即可

        他们是有个专门的python package来读这些设置,比如你的工具叫mytool 他们在脚本里如果想”引用” framerate 设置可能会这么写

        myToolSettings=thePackage.Settings(‘myTool’)

        这样所有myTool的设置(比如framerate等)就都到myToolSettings里了 而且是”综合”过了的(总的+override过的如果有的话)

        thePackage就是专门设计来自动去找到”总”的设置 以及知道如何去override总的设置(如果有项目的override)设置的话

      • xracz 五月 28, 2014 @ 11:52 下午

        恩,谢谢指点!对了,如果我想维护一个Maya PyQt的library,把上面那些,整理放到github,会有版权问题吗

      • 屌丝男 五月 29, 2014 @ 7:54 上午

        不知道… 问”真”程序员吧… (我猜有…)

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: