Ma Br wrote:
> ./configure -system-zlib -qt-gif -qt-libpng -debug -no-stl
> -no-exceptions -fast -no-framework -prefix /Developer/qt
Wohoooo ... following Richards suggestion from #qtruby on freenode I
tried to compile QT without the prefix - what can I say - the qtruby
configure now finds QT without any problems (though there is another new
problem now - see below)
So, I compiled it without the -prefix and installed QT in
/usr/local/Trolltech/Qt-4.2.0/
A subsequent "./configure --enable-mac" for QtRuby followed:
checking for Qt... libraries /usr/local/Trolltech/Qt-4.2.0/lib, headers
/usr/local/Trolltech/Qt-4.2.0/include
Nice and excellent so far - thanks for the hint Richard, though I don't
really understand why the config script was not detecting QT at the old
place /Developer/qt, even though I tried to tell it with-qt-dir= ...
However - NEW PROBLEM:
1) my output of configure: http://pastebin.ca/204840 (I was trying this
with and without the smoke lib definition)
That's all ok, and normal
2) my problem once I try to run make: http://pastebin.ca/204841
Any idea(s) ??? Thanks so much !
I really need to do a new release of QtRuby for Qt 4.2, as I've fixed a
few things like this problem. Here are the diffs made to 'kalyptus',
the tool that generates the Smoke library since the last release:
mardigras rdale 133% svn diff -r537751:580685 kalyptus
Index: kalyptus
···
===================================================================
--- kalyptus (revision 537751)
+++ kalyptus (revision 580685)
@@ -459,6 +459,8 @@
next;
}
# Hack, waiting for real handling of preprocessor
defines
+ $p =~ s/Q_REQUIRED_RESULT//;
+ $p =~ s/QT_ASCII_CAST_WARN//;
$p =~ s/QT_BEGIN_HEADER//;
$p =~ s/QT_END_HEADER//;
$p =~ s/QT_MODULE\(\w+\)//;
@@ -466,6 +468,7 @@
$p =~ s/QT_WEAK_SYMBOL//;
$p =~ s/QT_MOC_COMPAT//;
$p =~ s/Q_EXPORT_CODECS_BIG5//;
+ $p =~ s/Q_DECL_DEPRECATED//;
$p =~ s/QT_COMPAT / /;
$p =~ s/Q_DISABLE_COPY\((\w+)\)/$1(const $1 &);\n$1
&operator=(const $1 &);/;
$p =~ s/QWIDGETSIZE_MAX/32767/; # Qt/E uses this
#define as an enum value - yuck!
@@ -493,6 +496,8 @@
$p =~ s/KDOM_FORWARDPUT/bool putforward();/;
$p =~ s/KDOM_BASECLASS/virtual KJS::Value cache();/;
$p =~ s/KDOM_CAST/KJS::Value cast();/;
+ $p =~ s/Q_DECLARE_BUILTIN_METATYPE[^\)]*\)//;
+ $p =~ s/Q_[A-Z]+_EXPORT_INLINE//;
if ( $p =~ m/KDOM_DEFINE_PROTOTYPE\((\w+)\)/ ) {
push @inputqueue, split('\n',"namespace KDOM
{\nclass $1 {\n};\n};");
}
@@ -522,6 +527,8 @@
>> $p =~
/^\s*Q_DECLARE_TYPEINFO/
>> $p =~
/^\s*Q_PRIVATE_SLOT/
>> $p =~
/^\s*Q_DECLARE_SHARED/
+ || $p =~
/^\s*Q_DECLARE_INTERFACE/
+ || $p =~
/^\s*Q_DECLARE_METATYPE/
);
push @includes_list, $1 if $p =~
/^#include\s+<?(.*?)>?\s*$/;
@@ -569,8 +576,10 @@
$p =~ m/^#\s*ifdef\s+Q_MOC_RUN/ or
$p =~
m/^#\s*if\s+defined\s*\(QT3_SUPPORT/ or
$p =~
m/^#\s*if\s+defined\s*\(qdoc/ or
+ $p =~ m/^#\s*ifdef\s+qdoc/ or
$p =~
m/^#\s*ifndef\s+QT_NO_MEMBER_TEMPLATES/ or
$p =~
m/^#if\s*!defined\(Q_NO_USING_KEYWORD\)/ or
+ $p =~
m/^#if\s*defined\(Q_INTERNAL_QAPP_SRC\)/ or
($p =~
m/^#if\s*QT_VERSION\s*<\s*0x040000/ and $qt4) or
&$match_qt_defines( $p ) or
$p =~ m/^#\s*if\s+0\s+/ ) {
If that doesn't fix it, you may need to get the current versions of
'kalyptus' and 'kalyptusCxxToSmoke.pm' from the kde svn. Or remove the
'qcursor.h' header from smoke/qt/header_list and just leave out the
Qt::Cursor class for now.
-- Richard