2014-04-11 158 views
15

我在網上可以找到的關於QtRuby的所有東西都使用Qt 4,但Qt的當前版本爲5.這是否僅僅是一個文檔問題,並未趕上現實,Qt 5在QtRuby中可以正常工作?QtRuby是否支持Qt 5?

如果您斷言這是事實(即Qt5不受支持),請備份您的斷言和證據。

+0

問題不明確。請確保您不僅要求明確的答案 - 正如我目前所瞭解的那樣 - 還要證明這一點,即最有可能的源代碼級別。 – lpapp

+0

爲什麼downvotes? – iconoclast

+0

因爲問題不清楚。有一次,你說得更清楚了,我會把它變回+1。 – lpapp

回答

5

QtRuby

Qtruby和korundum不會保留很多年了。要獲得qtruby的維護版本,請將qtbindings安裝爲ruby gem。

Qtbindings主頁:https://github.com/ryanmelt/qtbindings/

也看到https://github.com/ryanmelt/qtbindings/issues/131了關於支持QT5討論。

紅寶石QML

Ruby-qml是Ruby一個QML/Qt Quick的包裝。它提供了QML和Ruby之間的綁定,使您能夠使用Qt5 Ruby提供的基於快速的GUI。

與QtRuby相比,Ruby-QML提供的綁定非常精簡。特別是沒有直接訪問Qt類的方法。這可能首先來自QtRuby似乎是一個劣勢。

當學習使用Ruby-QML,很快結果是利大於弊的侷限性:

  • QML和JS極大的補充描述和建模的UI
  • 靜態和動態方面QML/JS的用戶社區非常龐大。找到示例或幫助解決QML/JS問題比在QT/Ruby社區中更容易。
  • Ruby-qml上的示例非常完整,可以演示開始所需的結構。
  • JS可以用作Ruby和Qt之間靈活的'膠合邏輯'。
+0

Upvoted獲取有用的信息。不幸的是,我認爲你的一些評論對於想要使用qt的ruby用戶來說並不是真正可行的。你提到很多JS,但是我們使用紅寶石 - 感覺就像我們被qt和kde推動成爲二等公民。因爲他們優先使用Javascript或python。這不是追求海事組織的可行模式。在這一點上,我覺得ruby-gtk比ruby-qt生態系統更好。我還記得幾年前rdale活躍於qtruby ......現在qtruby甚至沒有人力從qt4轉換到qt5。 – shevy

5

QtRuby暫時只支持Qt 4。希望它會很快發生變化,但是在撰寫本文時這似乎是現實。

最後一個版本發生在兩年半前,因爲寫這篇文章的時候。這可以看這裏:

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

正如你所看到的,這也是一個Qt 4版本正如它的名字說:qt4-qtruby-2.2.0

這些信息也從他們的過時的KDE維基讓在這裏:

http://techbase.kde.org/Development/Languages/Ruby

如果這仍然不足以證明,你可以看看代碼自己,看看它實際上沒有約束力的Qt 5在主要Qt變體中添加的類。

這裏是解壓最新的tarball後快速ls

lpapp ~/Downloads/qt4-qtruby-2.2.0/qtruby/src/lib $ ls 
CMakeLists.txt Qt Qt.rb Qt3.rb Qt4.rb 
+0

你知道這個從經驗?或者你找到了權威的來源?或者你只是從我提到的相同證據得出結論? – iconoclast

+0

我不是downvoter順便說一句。我只是還沒有投票,因爲我不確定你的回答是否比我已經提出的問題更具結論性。你能鏈接到郵件列表上的東西嗎?還是僅僅指定Qt4的特定代碼片段?否則,似乎你有一個試探性的結論,這或多或少是我已經有的。 – iconoclast

+0

是的,我意識到你做出了一個堅定的斷言(至少在最初,但「似乎」這個詞讓人懷疑最初的暗示確定性),但是由於你沒有支持它,我不知道它是否值得信賴。如果這確實是一個值得信賴的答案,並且可以證明這一點,那麼我會很感激。但如果你認爲我應該相信你,因爲你這樣說,那麼我就不能理解這種態度。 – iconoclast