Re: [問題] Qt 移植至 arm

看板LinuxDev作者 (夏克維夫)時間8年前 (2016/04/20 10:52), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《gn00618777 (非常念舊)》之銘言: : 最近工作需要,需要移植Qt,現在也編譯成功了。開始對Qt有點好奇 : 我對 Qt的了解就是: : Qt 是一個架構,它裡面包含了很多 library,例如 C++ 函式庫 : openGL庫等等,而只要硬體支援 openGL 介面的都可以透過Qt : call openGL來達到硬體加。 這部分理解沒錯 但其實不只OpenGL 還有很多跟平臺和硬體相關的麻煩事 像不同平台某些型態大小不一樣等 : 而 wiki 上寫說: : 1 Qt 程式不需要改,就可以丟到其它有Qt架構的平台上編譯,然後 : 就會依照不同平台,顯示不同的介面。 : 2 Qt 不只有 C++ 應用程式介面,還可以用 Ada、Java、c# 等等來編寫 : 我這樣就想問了... : 1既然Qt可以用不同語言實現,那我用java寫,丟到其他有Qt的平台,就不 : 需要改嗎? 若是Qt用C++來寫,就得寫繼承那樣C++語法,如果 : 丟到用Java的Qt程式,那就得改阿?還是說利用Java寫的Qt,它底層有 這裡我看不太懂你要問啥 所以你直接看我下面的回答吧 : 某個方法將openGL和Java的function做些連結,然後我再A平台用Java : 寫程式,然後丟到B平台一樣也是用Java實現的Qt,所以程式才不需要改? : 2 若某個平台用Java實現的Qt,它的意義是啥? Qt就如上面所說 讓程式設計師不用擔心底層系統或硬體的許多煩人細節 但我個人認為他最重要的事提供一個統一的設計GUI的方法 不用說你在windows要用.NET Framework裡面的工具 到Mac OSX 要用 Cocoa 也就是 API 你只要學一種 至於不同語言binding的部分 也就是你問java實現的意思 就要看那個語言了 像java就是用JNI 也就是從java那邊呼叫 Qt的library 然後提供一個長得跟原版Qt API 幾乎一模一樣的 java API 這部分如果有興趣你可以去查查 SWIG 一個用來生成不同語言呼叫介面的 project : 用C++編寫的Qt,我大概猜得出它是用C++將openGL庫封裝起來,然後 : 我們來使用,那 Java or C# 這些呢? : 謝謝指教! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.114.87.231 ※ 文章網址: https://www.ptt.cc/bbs/LinuxDev/M.1461120720.A.52C.html

04/21 20:50, , 1F
謝謝,聽妳這樣講解有點概念
04/21 20:50, 1F
文章代碼(AID): #1N5kxGKi (LinuxDev)
討論串 (同標題文章)
文章代碼(AID): #1N5kxGKi (LinuxDev)