[ANN] QtRuby 1.0.2/Korundum 3.3.1 beta2

Download:
http://rubyforge.org/projects/korundum/

Release notes:

* The packages should now build with Qt 3.1.x and above, and KDE 3.1.x and
above for Korundum.

* Added a qui extension for loading a Qt Designer .ui file at runtime via
QWidgetFactory

* For example:

     require 'Qt'
     require 'qui'

     a = Qt::Application.new ARGV
     if ARGV.length == 0
         exit
     end

     if ARGV.length == 2
         QUI::WidgetFactory.loadImages ARGV[0]
         w = QUI::WidgetFactory.create ARGV[1]
         if w.nil?
             exit
         end
         w.show
         a.connect( a, SIGNAL('lastWindowClosed()'), a, SLOT('quit()') )
         a.exec
     end

Build instructions:

$ make -f Makefile.cvs
$ ./configure --with-qt-dir=<your qt directory> --prefix=<your install

$ make
$ make install

A description of QtRuby and Korundum features can be found here:

http://developer.kde.org/language-bindings/ruby/

The text of Qt tutorial #1 has been translated to ruby, and can be found
here:

http://developer.kde.org/language-bindings/ruby/tutorial/tutorial.html

It accompanies the code examples in qtruby/rubylib/tutorial/t1 to t14.

Feedback welcome on ruby-talk, the Korundum Rubyforge forum or on the
kde-bindings@kde.org mailing list.

-- Richard

Feedback welcome on ruby-talk, the Korundum Rubyforge forum or on the
kde-bindings@kde.org mailing list.
-- Richard

just one word: WOW !!!

and... thanks :slight_smile:

that was fast, and great work

···

--
--- vruz

Thunfisch wrote:

Hi,

I just tried to compile korundum, but unfortunately make fails (log
attached).

Hmm, it couldn't find the libkmdi library. One of the changes I made to the
latest version of korundum was to look for that library as part of the
package configuration. It was only added in KDE 3.2, and so to build on KDE
3.1 there needs to be a check for whether the library is there and not add
a '-lkmdi' link option if it's missing.

As a work round you can edit korundum-cvs/smoke/kde/Makefile.am, and change
$(LIB_KMDI) to -lkmdi. I wonder why the test doesn't work. Towards the end
of the configure you should see a line like this, and in your case I assume
the result was 'no':

checking whether to use kmdi lib from kdelibs... yes

-- Richard

Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote in message news:<ci4a9f$5of$1$830fa7b3@news.demon.co.uk>...

Download:
http://rubyforge.org/projects/korundum/

http://developer.kde.org/language-bindings/ruby/tutorial/tutorial.html

Hi,

It seems to work fine. Unfortunately, the second chapter of the tutorial
contains a broken link to Signals and Slots documentation.

Cheers,

Han Holl

vruz wrote:

Feedback welcome on ruby-talk, the Korundum Rubyforge forum or on the
kde-bindings@kde.org mailing list.
-- Richard

just one word: WOW !!!

and... thanks :slight_smile:

that was fast, and great work

Thanks! I hope that now the bindings are on Rubyforge with regular releases,
more people will be able to get them built and try them out..

-- Richard

Richard Dale wrote:

As a work round you can edit korundum-cvs/smoke/kde/Makefile.am, and
change $(LIB_KMDI) to -lkmdi. I wonder why the test doesn't work. Towards
the end of the configure you should see a line like this, and in your case
I assume the result was 'no':

checking whether to use kmdi lib from kdelibs... yes

I guess I found something in config.log (attached), maybe this is what
you're looking for.

Thunfisch

config.log (1.92 KB)

Han Holl wrote:

Richard Dale <Richard_Dale@tipitina.demon.co.uk> wrote in message
news:<ci4a9f$5of$1$830fa7b3@news.demon.co.uk>...

Download:
http://rubyforge.org/projects/korundum/

http://developer.kde.org/language-bindings/ruby/tutorial/tutorial.html

Hi,

It seems to work fine. Unfortunately, the second chapter of the tutorial
contains a broken link to Signals and Slots documentation.

OK - I've fixed that and a few other broken links. The Signals and Slots
documentation isn't ruby specific, it's just the standard C++ on
Trolltech's site.

I've added a KDE tutorial today too:

http://developer.kde.org/language-bindings/ruby/kde3tutorial/index.html

-- Richard

My fault. Somehow /usr/kde/3.2/bin was in my PATH and /usr/kde/3.3/bin not,
so the older version of kde-config was used. I fixed it but now there's a
new problem (log attached).

Thunfisch

error.log (1.47 KB)

Thunfisch wrote:

My fault. Somehow /usr/kde/3.2/bin was in my PATH and /usr/kde/3.3/bin
not, so the older version of kde-config was used. I fixed it but now
there's a new problem (log attached).

I'll keep my fingers crossed that the new libkmdi check is working ok then..

Thunfisch

I think what's happened is that the Smoke library has been generated from
the KDE 3.2 headers, but you're compiling it against KDE 3.3. I had a look
on my KDE 3.1 machine, and KCatalogue::setFileName() did used to be public,
but on 3.3 it's private. So you need to remove the generated .cpp files
from korundum-cvs/smoke/kde (ie smokedata.cpp, x_1.cpp to x_20.cpp), and
then make again to regenerate Smoke. A 'make clean' command doesn't remove
those sources, but it should do.

-- Richard

Richard Dale wrote:

I think what's happened is that the Smoke library has been generated from
the KDE 3.2 headers, but you're compiling it against KDE 3.3. I had a look
on my KDE 3.1 machine, and KCatalogue::setFileName() did used to be
public, but on 3.3 it's private. So you need to remove the generated .cpp
files from korundum-cvs/smoke/kde (ie smokedata.cpp, x_1.cpp to x_20.cpp),
and then make again to regenerate Smoke. A 'make clean' command doesn't
remove those sources, but it should do.

You're absolutely right, now it compiles without any problems.
Thanks for you help and time.

Regards,

-- Thunfisch

Thunfisch wrote:

Richard Dale wrote:

I think what's happened is that the Smoke library has been generated from
the KDE 3.2 headers, but you're compiling it against KDE 3.3. I had a
look on my KDE 3.1 machine, and KCatalogue::setFileName() did used to be
public, but on 3.3 it's private. So you need to remove the generated .cpp
files from korundum-cvs/smoke/kde (ie smokedata.cpp, x_1.cpp to
x_20.cpp), and then make again to regenerate Smoke. A 'make clean'
command doesn't remove those sources, but it should do.

You're absolutely right, now it compiles without any problems.
Thanks for you help and time.

No problem. I think the KDE version check for the libkmdi library was wrong
though because it was actually introduced in 3.2.0. Your 3.2 lib had it
because the Smoke library generated those classes from the 3.2 headers, and
then the link failed. So I've just changed it in
kdebindings/configure.in.in :

From:
#if KDE_VERSION < ((3<<16) | (2<<8) | (90))

To:
#if KDE_VERSION < ((3<<16) | (2<<8) | (0))