Pyside build.sh Не удается проанализировать файл: ../data/typesystem.xml - PullRequest
0 голосов
/ 23 декабря 2011

Я следую этому уроку http://lynxline.com/superhybrids-part-2-now-qt-pyside/ Я получаю следующий вывод при запуске build.sh:

Fatal error: line=3, column=62, message=Failed to parse: 'typesystem_core.xml'

Cannot parse file: ../data/typesystem.xmlWARNING: Failure to find: pyhybrid/pyhybrid_module_wrapper.cpp
WARNING: Failure to find: pyhybrid/mainwindow_wrapper.cpp

В build.sh перечислены следующие каталоги:

QTGUI_INC=/Library/Frameworks/QtGui.framework/Versions/4/Headers
QTCORE_INC=/Library/Frameworks/QtCore.framework/Versions/4/Headers
QTTYPESYSTEM=/usr/local/share/PySide/typesystems 

но у меня нет этих каталогов. Pyside, Qt и Python установлены. Где я могу найти системы типов, QtGui.framework / Versions / 4 / Headers / QtCore.framework / Versions / 4 / Headers?

Ответы [ 2 ]

0 голосов
/ 03 февраля 2013

build.sh

#!/usr/bin/env sh

PROJ_DIR=`pwd`

echo "Building hybrid project."
echo "Project root: " $PROJ_DIR

QT4TYPESYSTEM_DIR=`pkg-config --variable=typesystemdir pyside`
QT4HEADER_DIRS=`pkg-config --variable=includedir QtCore`:`pkg-config --variable=includedir QtCore`/..:`pkg-config --variable=includedir QtGui`

function step_app {
    cd hybrid
    qmake
    make clean
    make
    cd $PROJ_DIR
}

function step_generate {
    cd hybridpy
    shiboken --include-paths=$PROJ_DIR/hybrid:$QT4HEADER_DIRS:/usr/include --typesystem-paths=$PROJ_DIR/data:$QT4TYPESYSTEM_DIR --output-directory=. --debug-level=medium $PROJ_DIR/data/global.h $PROJ_DIR/data/typesystem.xml
    cd $PROJ_DIR
}

function step_wrap {
    cd hybridpy
    qmake
    make clean
    make
    cd $PROJ_DIR
}


echo "Qt typesystem dir: $QT4TYPESYSTEM_DIR"
echo "Qt headers dir:  $QT4HEADER_DIRS"

step_app
step_generate
step_wrap
0 голосов
/ 23 декабря 2011

Я не уверен, какую ОС вы используете, но при условии, что вы используете Linux (Ubuntu), заголовочные файлы include должны быть установлены (при условии, что Pyside и Qt были установлены с помощью менеджера пакетов APT) в

QTGUI_INC=/usr/include/qt4/QtGui
QTCORE_INC=/usr/include/qt4/QtGui

или если сделано из источника:

QTGUI_INC=/usr/local/include/qt4/QtGui
QTCORE_INC=/usr/local/include/qt4/QtGui

Что касается каталога QTTYPESYSTEM, вам необходимо установить пакет libpyside-dev

...