Installer ruby-qt sur Mac OS X
Par Martin Catty le mardi, novembre 11 2008, 10:41 - ruby - Lien permanent
Voici un petit howto pour compiler Ruby-qt sur Mac OS X Leopard.
Installer Qt
Commence par télécharger le dmg de Qt et installe le.
Installer Ruby-Qt
Télécharge ensuite la dernière version de qt4-qtruby sur rubyforge (1.4.10 à ce jour) et extrait le tarball. Une fois réalisé on se place dans le répertoire nouvellement créé et on lance un petit coup de cmake :
$ cd qt4-qtruby-1.4.10 $ cmake .
S'il te manque des outils comme cmake, des headers ou des dépendances, tu peux tout résoudre en installant les packages qui vont bien via fink ou port.
Logiquement on devrait maintenant simplement lancer un make.
Le souci c'est qu'on aura cette erreur à la compilation :
Undefined symbols:
"QWebHistoryItem::~QWebHistoryItem()", referenced from:
QList<QWebHistoryItem>::node_destruct(QList<QWebHistoryItem>::Node*, QList<QWebHistoryItem>::Node*)in handlers.o
Le problème vient du QWebHistoryItem mais je ne sais pas ce qui cloche exactement.
On va donc mettre en commentaire deux lignes qui y font référence dans le fichier ruby/qtruby/src/handlers.cpp :
Ligne 2488 : // DEF_VALUELIST_MARSHALLER( QWebHistoryItemList, QList<QWebHistoryItem>, QWebHistoryItem ) Ligne 2661 : // { "QList<QWebHistoryItem>", marshall_QWebHistoryItemList },
et lancer respectivement un :
$ make $ make check # make install
Logiquement tout devrait bien se passer, on peut le vérifier avec irb :
$ irb >> require 'Qt' => true >> Qt.version => "4.4.3"
Et c'est parti pour réaliser des applications cross-platform avec notre langage préféré \o/



Commentaires
Ben j'ai suivi la procédure et voila ce que j'obtiens:
irb(main):001:0> require 'Qt'
/usr/local/lib/ruby/site_ruby/1.8/i686-darwin9.5.0/qtruby4.bundle: [BUG] Bus Error
ruby 1.8.7 (2008-08-11 patchlevel 72) [i686-darwin9.5.0]
Abort trap
Merci pour l'aide
Je suis sur MacOS 10.5.5
Bonjour,
Je me demande quand même comment on fait pour livrer une application QT à un utilisateur sans qu'il doive apprendre à manipuler cmake ?
C’est possible de pakager le tout selon l'environnement cible nix*, osx, Win ?
merci
Vivian