代码之家  ›  专栏  ›  技术社区  ›  ivo

如何在Mac OS X上安装PySide v0.3.1?

  •  2
  • ivo  · 技术社区  · 16 年前

    我正在尝试安装 PySide Mac OS X中的v0.3.1,用于python中的Qt开发。

    作为先决条件,我安装了 CMake 以及 Qt SDK .

    documentation

    export PYSIDE_BASE_DIR="<my_dir>"
    
    export APIEXTRACTOR_DIR="$PYSIDE_BASE_DIR/apiextractor-0.5.1"
    export GENERATORRUNNER_DIR="$PYSIDE_BASE_DIR/generatorrunner-0.4.2"
    export SHIBOKEN_DIR="$PYSIDE_BASE_DIR/shiboken-0.3.1"
    export PYSIDE_DIR="$PYSIDE_BASE_DIR/pyside-qt4.6+0.3.1"
    export PYSIDE_TOOLS_DIR="$PYSIDE_BASE_DIR/pyside-tools-0.1.3"
    
    pushd .
    
    cd $APIEXTRACTOR_DIR
    cmake . 
    
    cd $GENERATORRUNNER_DIR
    cmake -DApiExtractor_DIR=$APIEXTRACTOR_DIR .
    
    cd $SHIBOKEN_DIR
    cmake -DApiExtractor_DIR=$APIEXTRACTOR_DIR -DGeneratorRunner_DIR=$GENERATORRUNNER_DIR .
    
    cd $PYSIDE_DIR
    cmake -DShiboken_DIR=$SHIBOKEN_DIR/libshiboken -DGENERATOR=$GENERATORRUNNER_DIR .
    
    cd $PYSIDE_TOOLS_DIR
    cmake .
    
    popd
    

    现在,我不知道这个安装脚本是否正常,但显然一切正常。每个组件(apiextractor、generatorrunner、shiboken、pysideqt和pysidetools)都被编译到自己的目录中。

    问题是我不太明白PySide是如何进入系统的python环境的。实际上,当我启动python shell时,我无法导入PySide:

    >>> import PySide
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ImportError: No module named PySide
    

    注:我知道 Installing PySide - OSX

    3 回复  |  直到 9 年前
        1
  •  2
  •   Lauro Moura    16 年前

    我没有任何MacOS经验,但假设它类似于任何*nix,那我们走吧:

    关于脚本:它不缺少一些“make,makeinstall”命令吗?你发布的版本刚刚运行了cmake 配置 建造。同样为了测试,我为所有模块设置了-DCMAKE\u INSTALL\u PREFIX=。这样,所有的东西都安装在同一个地方,CMake会帮我找到它们,只要我对每一个都使用相同的安装前缀。脚本中的目录布局非常复杂,并且混合了生成目录和源目录。

    关于查找PySide:一旦一切都被正确编译和安装,安装“PySide”目录的目录必须在PYTHONPATH变量中可用。在下面的例子中,

    #!/bin/bash
    
    BUILD_ROOT=/tmp/pyside-build
    INSTALL_PREFIX=/tmp/sandbox
    
    function build_module {
        cd $BUILD_ROOT
        echo Cloning project $1 from url $2
        git clone --depth 1 $2 $BUILD_ROOT/$1
    
        BUILD_DIR=$BUILD_ROOT/$1/build
        mkdir -p $BUILD_DIR
        cd $BUILD_DIR
    
        echo Configuring $1 build.
        cmake -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX ..
    
        echo Configured $1. Starting build.
        make LD_LIBRARY_PATH=$INSTALL_PREFIX/lib
    
        echo Built $1. Installing.
        make install
        echo Successfully built and installed $1
    }
    
    rm -rf $BUILD_ROOT
    mkdir -p $BUILD_ROOT
    build_module apiextractor git://gitorious.org/pyside/apiextractor.git
    build_module generatorrunner git://gitorious.org/pyside/generatorrunner.git
    build_module shiboken git://gitorious.org/pyside/shiboken.git
    build_module pyside-shiboken git://gitorious.org/pyside/pyside-shiboken.git
    

    运行它并等待一段时间(Qt相当大)。:)

    这个脚本将把所有包下载到/tmp/pyside build中,在自己的“build”目录中构建每个包,并将所有内容安装到/tmp/sandbox中。然后,我只需将PYTHONPATH设置为/tmp/sandbox/lib/python2.6/site-packages,PySide工作正常。

        2
  •  1
  •   Supertwang    16 年前

    为了回应原来的帖子。。。


    我得到了 最 在Mac(Snowleopard10.6.3)上运行pyside0.3.1的过程中,我被最后的编译步骤挂断了。我的剧本没有你的那么直截了当,但本质上是相似的。

    为了最终的编译,我遇到了很多问题,并且解决了这些问题,我希望我能帮助一些人解决这些问题。另外,也许我们可以一起找出如何通过最后一步。

    我希望这将有助于推动对mac的支持。。。

    我不能直接在堆栈溢出上发布,因为它太长了,所以这里是pyside邮件列表上的帖子链接。

    http://lists.openbossa.org/pipermail/pyside/2010-June/000812.html

        3
  •  1
  •   synthesizerpatel    15 年前

    虽然这个问题最初被问到已经有几个月了,但我在以下网站上看到了官方的PySide构建脚本repo:

    http://qt.gitorious.org/pyside/buildscripts

    自述文件介绍了构建过程:

    http://qt.gitorious.org/pyside/buildscripts/blobs/master/README

    它似乎是相当自动的,到目前为止,我唯一要提醒的是,它通过brew拉低了libxslt—我不能权威地说libxslt是否与Snow Leopard一起提供—但它在默认情况下肯定是在Lion中。

    看起来唯一的手动安装步骤就是在系统上安装cmake。