我正在尝试在Mac OS X中安装PySide v0.3.1,以便在python中进行Qt开发。

作为先决条件,我已经安装了CMakeQt 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,pyside-qt和pyside-tools)都被编译到其自己的目录中。

问题是我不太了解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问题,但是这个问题不再相关,因为它与Boost库的特定依赖有关,但是版本0.3.0使得PySide从基于Boost的源代码迁移到了CPython一。

最佳答案

我没有任何MacOS经验,但是假设它与任何* nix类似,那就开始吧:

关于脚本:它是否缺少一些“ make,make install”命令?您发布的版本只需运行cmake即可配置构建。同样为了测试,我为所有模块设置了-DCMAKE_INSTALL_PREFIX =。这样,只要我为每个安装了相同的安装前缀,所有内容都将安装在同一位置,CMake会为我找到它们。脚本中的目录布局非常复杂,混合了构建目录和源目录。

关于查找PySide:正确编译并安装所有内容之后,PYTHONPATH变量中必须提供“ PySide”目录的安装目录。在下面的示例中,

这是构建脚本的简单版本(可在Ubuntu上使用):

#!/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可以正常工作。

关于python - 如何在Mac OS X上安装PySide v0.3.1?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2880434/

10-12 22:21