Subject: | ubuntu 9.04 - fails build with qt deb packages qt4.5.0 (‘void XS_Qt__QAbstractFileEngine_extension(PerlInterpreter*, CV*)’) |
Even when fixed known typo in Makefile.PL, still fails on qt4.5, see log
below.
Guess: Likely the autogenerated XS fails due to new symbols introduced
into qt. Maintainer might update these.
<STEPS>
$ sudo cpan
cpan $ install QtCore
cpan $ look QtCore
<THEN>
As mentioned in the qt-apps.org forum
root@quicksilver:~/.cpan/build/QtCore-4.004-TOJY4B# diff Makefile.PL
Makefile.PL~
31c31
< $QtCore_path = $args{-qc};
---
Show quoted text
> $QtCore_path = $arcs{-qc};
<THEN>
$ perl Makefile.PL -i /usr/include/qt4/ -qc /usr/include/qt4/QtCore/
a) MANIFEST is not uptodate. [likely minor]
[.. see below for details ]
Checking if your kit is complete...
Warning: the following files are missing in your kit:
examples/App2/
lib/Qt/
b) Compilation fails:
[.. see below for details ]
QAbstractFileEngine.c
QAbstractFileEngine.xs: In function ‘void
XS_Qt__QAbstractFileEngine_extension(PerlInterpreter*, CV*)’:
QAbstractFileEngine.xs:253: error: ‘ExtensionOption’ was not declared in
this scope
{COMMENTS}
Likely new symbols in qt4.5 !?
For instance, ExtensionOption seems new to be new class:
http://doc.trolltech.com/4.5/qwebpluginfactory-extensionoption.html
Cheers,
muenalan
[LOG]
root@quicksilver:~/.cpan/build/QtCore-4.004-TOJY4B# perl Makefile.PL -i
/usr/include/qt4/ -qc /usr/include/qt4/QtCore/
/usr/include/qt4/QtCore/
=====================================================================
found: 4 5 0
found Qt ver = 4 5
== QGlobal ==
??? td: 'typedef QIntForType<void *>::Type qptrdiff;'
= QSysInfo =
enum ??? 'enum Sizes { WordSize = (sizeof(void *)<<3) };'
= QBool =
???? 'operator void *()'
???? '{ return b ? static_cast<void *>(this) : static_cast<void *>(0); }'
= QFlag =
= QIncompatibleFlag =
??? td: 'typedef void **Zero;'
??? td: 'typedef Enum enum_type;'
== QPoint ==
= QPoint =
= QPointF =
== QLine ==
= QLine =
= QLineF =
== QSize ==
= QSize =
= QSizeF =
== QRect ==
= QRect =
= QRectF =
== QMutex ==
= QMutex =
= QMutexLocker =
???? '}'
== QWaitCondition ==
= QWaitCondition =
== QReadWriteLock ==
= QReadWriteLock =
= QReadLocker =
= QWriteLocker =
== QSemaphore ==
= QSemaphore =
== QBasicTimer ==
= QBasicTimer =
== QChar ==
= QLatin1Char =
= QChar =
== QByteArray ==
= QByteArray =
??? td: 'typedef Data * DataPtr;'
= QByteRef =
== QBitArray ==
= QBitArray =
??? td: 'typedef QByteArray::DataPtr DataPtr;'
!!! unknown output type 'DataPtr'
= QBitRef =
== QString ==
= QString =
???? ';'
???? ';'
search type SectionFlags in QString
search type SectionFlags in QString
search type SectionFlags in QString
search type SplitBehavior in QString
search type SplitBehavior in QString
search type SplitBehavior in QString
search type NormalizationForm in QString
search type NormalizationForm in QString
??? td: 'typedef Data * DataPtr;'
= QLatin1String =
= QCharRef =
= QStringRef =
== QStringList ==
= QStringList =
== QLocale ==
= QSystemLocale =
= QLocale =
= QLocale::Data =
???? '}'
???? ';'
???? 'QT_END_NAMESPACE'
???? 'QT_END_HEADER'
== QTextCodec ==
= QTextCodec =
= QTextCodec::ConverterState =
= QTextEncoder =
= QTextDecoder =
== QStringMatcher ==
= QStringMatcher =
== QRegExp ==
= QRegExp =
== QResource ==
= QResource =
== QUrl ==
= QUrl =
??? td: 'typedef QUrlPrivate * DataPtr;'
!!! unknown type ''
!!! unknown output type 'QList<QPair<QString, QString> >'
!!! unknown type ''
!!! unknown output type 'QList<QPair<QByteArray, QByteArray> >'
!!! unknown output type 'DataPtr'
== QUuid ==
= QUuid =
== QEvent ==
= QEvent =
= QTimerEvent =
= QChildEvent =
= QDynamicPropertyChangeEvent =
== QDateTime ==
= QDate =
= QTime =
= QDateTime =
== QLibraryInfo ==
= QLibraryInfo =
== QObject ==
= QObject =
??? 'QMetaObject staticQtMetaObject;' => 'QMetaObject'
'staticQtMetaObject', curr_class QObject, base QObject
!!! unknown output type 'Q_INVOKABLE'
= QObjectUserData =
== QObjectCleanupHandler ==
= QObjectCleanupHandler =
== QLibrary ==
= QLibrary =
== QPluginLoader ==
= QPluginLoader =
== QTimeLine ==
= QTimeLine =
== QTimer ==
= QTimer =
== QEventLoop ==
= QEventLoop =
== QThread ==
= QThread =
== QCoreApplication ==
= QCoreApplication =
== QSignalMapper ==
= QSignalMapper =
== QSocketNotifier ==
= QSocketNotifier =
== QIODevice ==
= QIODevice =
== QFile ==
= QFile =
== QFileInfo ==
= QFileInfo =
== QDir ==
= QDir =
== QAbstractFileEngine ==
= QAbstractFileEngine =
??? 'class ExtensionOption;' => 'class' 'ExtensionOption', curr_class
QAbstractFileEngine, base QAbstractFileEngine
??? 'class ExtensionReturn;' => 'class' 'ExtensionReturn', curr_class
QAbstractFileEngine, base QAbstractFileEngine
= QAbstractFileEngine::MapExtensionOption =
= QAbstractFileEngine::MapExtensionReturn =
= QAbstractFileEngine::UnMapExtensionOption =
== QFSFileEngine ==
= QFSFileEngine =
== QFileSystemWatcher ==
= QFileSystemWatcher =
== QTemporaryFile ==
= QTemporaryFile =
== QBuffer ==
= QBuffer =
== QProcess ==
= QProcess =
== QTextStream ==
= QTextStream =
??? td: 'typedef QTextStream & (*QTextStreamFunction)(QTextStream &);'
= QTextStreamManipulator =
== QDataStream ==
= QDataStream =
== QMetaType ==
= QMetaType =
== QTranslator ==
= QTranslator =
== QVariant ==
= QVariant =
= QVariant::PrivateShared =
??? 'QAtomicInt ref;' => 'QAtomicInt' 'ref', curr_class
QVariant::PrivateShared, base QVariant
= QVariant::Private =
= QVariant::Handler =
??? 'Private d;' => 'Private' 'd', curr_class QVariant, base
QVariant::Private
??? 'Handler *handler;' => 'Handler' '*handler', curr_class QVariant,
base QVariant::Private
??? td: 'typedef Private DataPtr;'
!!! unknown output type 'DataPtr'
= QVariantComparisonHelper =
== QAbstractItemModel ==
= QModelIndex =
= QPersistentModelIndex =
= QAbstractItemModel =
= QAbstractTableModel =
= QAbstractListModel =
== QMimeData ==
= QMimeData =
== QSettings ==
= QSettings =
Checking if your kit is complete...
Warning: the following files are missing in your kit:
examples/App2/
lib/Qt/
Please inform the author.
WARNING: Setting ABSTRACT via file 'lib/QtCore.pm' failed
at /usr/local/share/perl/5.10.0/ExtUtils/MakeMaker.pm line 583
Writing Makefile for QtCore
root@quicksilver:~/.cpan/build/QtCore-4.004-TOJY4B# make
cp lib/Qt/QCoreApplication.pm blib/lib/Qt/QCoreApplication.pm
cp lib/Qt/QGlobal.pm blib/lib/Qt/QGlobal.pm
cp lib/Qt/QPluginLoader.pm blib/lib/Qt/QPluginLoader.pm
cp lib/Qt/QMetaType.pm blib/lib/Qt/QMetaType.pm
cp lib/Qt/QTextStream.pm blib/lib/Qt/QTextStream.pm
cp lib/Qt/QSemaphore.pm blib/lib/Qt/QSemaphore.pm
cp lib/Qt/QObject.pm blib/lib/Qt/QObject.pm
cp lib/Qt/QObjectCleanupHandler.pm blib/lib/Qt/QObjectCleanupHandler.pm
cp lib/Qt/QBasicTimer.pm blib/lib/Qt/QBasicTimer.pm
cp lib/Qt/QUrl.pm blib/lib/Qt/QUrl.pm
cp lib/Qt/QStringList.pm blib/lib/Qt/QStringList.pm
cp lib/Qt/QFile.pm blib/lib/Qt/QFile.pm
cp lib/Qt/QSocketNotifier.pm blib/lib/Qt/QSocketNotifier.pm
cp lib/Qt/QReadWriteLock.pm blib/lib/Qt/QReadWriteLock.pm
cp lib/Qt.pm blib/lib/Qt.pm
cp lib/Qt/QEvent.pm blib/lib/Qt/QEvent.pm
cp lib/Qt/QTimeLine.pm blib/lib/Qt/QTimeLine.pm
cp lib/Qt/QDateTime.pm blib/lib/Qt/QDateTime.pm
cp lib/Qt/QSettings.pm blib/lib/Qt/QSettings.pm
cp lib/Qt/QFSFileEngine.pm blib/lib/Qt/QFSFileEngine.pm
cp lib/Qt/QUuid.pm blib/lib/Qt/QUuid.pm
cp lib/Qt/QDataStream.pm blib/lib/Qt/QDataStream.pm
cp lib/Qt/QTimer.pm blib/lib/Qt/QTimer.pm
cp lib/Qt/QMimeData.pm blib/lib/Qt/QMimeData.pm
cp lib/Qt/QAbstractFileEngine.pm blib/lib/Qt/QAbstractFileEngine.pm
cp lib/Qt/QIODevice.pm blib/lib/Qt/QIODevice.pm
cp lib/Qt/QSignalMapper.pm blib/lib/Qt/QSignalMapper.pm
cp lib/Qt/QProcess.pm blib/lib/Qt/QProcess.pm
cp lib/Qt/QFileSystemWatcher.pm blib/lib/Qt/QFileSystemWatcher.pm
cp lib/Qt/QRect.pm blib/lib/Qt/QRect.pm
cp lib/Qt/QRegExp.pm blib/lib/Qt/QRegExp.pm
cp lib/Qt/QFileInfo.pm blib/lib/Qt/QFileInfo.pm
cp lib/Qt/QAbstractItemModel.pm blib/lib/Qt/QAbstractItemModel.pm
cp lib/Qt/QTranslator.pm blib/lib/Qt/QTranslator.pm
cp lib/QtCore.pm blib/lib/QtCore.pm
cp lib/Qt/QLocale.pm blib/lib/Qt/QLocale.pm
cp lib/Qt/QLine.pm blib/lib/Qt/QLine.pm
cp lib/Qt/QDir.pm blib/lib/Qt/QDir.pm
cp lib/Qt/QTextCodec.pm blib/lib/Qt/QTextCodec.pm
cp lib/Qt/QTemporaryFile.pm blib/lib/Qt/QTemporaryFile.pm
cp lib/Qt/QResource.pm blib/lib/Qt/QResource.pm
cp lib/Qt/QPoint.pm blib/lib/Qt/QPoint.pm
cp lib/Qt/QThread.pm blib/lib/Qt/QThread.pm
cp lib/Qt/QStringMatcher.pm blib/lib/Qt/QStringMatcher.pm
cp lib/Qt/QBuffer.pm blib/lib/Qt/QBuffer.pm
cp lib/Qt/QByteArray.pm blib/lib/Qt/QByteArray.pm
cp lib/Qt/QEventLoop.pm blib/lib/Qt/QEventLoop.pm
cp lib/Qt/QVariant.pm blib/lib/Qt/QVariant.pm
cp lib/Qt/QMutex.pm blib/lib/Qt/QMutex.pm
cp lib/Qt/QChar.pm blib/lib/Qt/QChar.pm
cp lib/Qt/QSize.pm blib/lib/Qt/QSize.pm
cp lib/Qt/QWaitCondition.pm blib/lib/Qt/QWaitCondition.pm
cp lib/Qt/QLibraryInfo.pm blib/lib/Qt/QLibraryInfo.pm
cp lib/Qt/QString.pm blib/lib/Qt/QString.pm
cp lib/Qt/QLibrary.pm blib/lib/Qt/QLibrary.pm
cp lib/Qt/QBitArray.pm blib/lib/Qt/QBitArray.pm
/usr/bin/perl /usr/share/perl/5.10/ExtUtils/xsubpp -C++ -typemap
/usr/share/perl/5.10/ExtUtils/typemap -typemap perlobject.map -typemap
typemap QAbstractFileEngine.xs > QAbstractFileEngine.xsc && mv
QAbstractFileEngine.xsc QAbstractFileEngine.c
g++ -c -I/usr/include/qt4/ -D_REENTRANT -D_GNU_SOURCE -DDEBIAN
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"4.004\"
-DXS_VERSION=\"4.004\" -fPIC "-I/usr/lib/perl/5.10/CORE"
QAbstractFileEngine.c
QAbstractFileEngine.xs: In function ‘void
XS_Qt__QAbstractFileEngine_extension(PerlInterpreter*, CV*)’:
QAbstractFileEngine.xs:253: error: ‘ExtensionOption’ was not declared in
this scope
QAbstractFileEngine.xs:253: error: ‘option’ was not declared in this scope
QAbstractFileEngine.xs:255: error: expected primary-expression before
‘)’ token
QAbstractFileEngine.xs:264: error: ‘ExtensionOption’ was not declared in
this scope
QAbstractFileEngine.xs:264: error: ‘option’ was not declared in this scope
QAbstractFileEngine.xs:265: error: ‘ExtensionReturn’ was not declared in
this scope
QAbstractFileEngine.xs:265: error: ‘output’ was not declared in this scope
QAbstractFileEngine.xs:267: error: expected primary-expression before
‘)’ token
QAbstractFileEngine.xs:270: error: expected primary-expression before
‘)’ token
QAbstractFileEngine.c: In function ‘void
boot_Qt__QAbstractFileEngine(PerlInterpreter*, CV*)’:
QAbstractFileEngine.c:1209: warning: deprecated conversion from string
constant to ‘char*’
make: *** [QAbstractFileEngine.o] Error 1