内容简介:在測試那又怎樣? 實際上
在測試 webOS OSE
(webOS Open Source Edition) 的時候,我注意到了 webOS OSE 的核心組件是採用 Qt5
製作的,搭配的版本是 Qt 5.6.3
。
那又怎樣? 實際上 Qt 5.6.3
這個 LTS (Long Term Support) 的版本在今年 (2019) 的 3 月已經 停止支援
了,因此必須要來說說這件事對我們這群玩家以及想將 webOS OSE 用在自己商品上的人的影響。
你必須要知道的 LGPLv3
實際上, Qt 5.6
是最後一版維持 LGPLv2/LGPLv3
雙重授權的版本,而 Qt 5.7 以上都已經是走 LGPLv3
授權 (扣掉一些商業組件是 GPLv3 外)
LGPLv2 和 LGPLv3 到底有怎樣的差異? 簡單來說,LGPLv3 多增加一個 允許使用者自行更換 lib
的選項,也就是你必須告訴你的使用者如何換掉這個系統上的 Qt lib, 或是如何升級它。
這件事情對於 B2C (Business to Consumer)
的產品而言可能影響不大,畢竟我們都知道消費者裡面總是會出現一些
如果今天你是把 webOS OSE 放在機台之類的商業產品,也就是走 B2B (Business to Business)
的模式,這就影響很大了,畢竟我們都不希望合作夥伴因為亂改東西,導致機台故障因而導致必須賠償的事情發生。
由於筆者並非法律相關人士,因此建議看一下 Using Qt under LGPLv3 這份簡報,以及閱讀 LGPLv3 的授權條款,來理解一下事情的嚴重性。
所以到底怎麼了?
實際上,根據 LG: Building webOS with Qt
這場 keynote 的訊息, LG
自己販賣的 webOS TV
已經遷移到 Qt 5.9
上 (商業授權或是 LGPLv3 還不清楚,但推測應該為商業授權)
但如果我們的系統以 webOS OSE
為基底,並販售 Embedded Linux based 的產品的話,就要注意授權這一塊啦,到目前為止,webOS OSE 因為內建的是 Qt 5.6.3
,因此只要你符合 LGPLv2 的授權,以及 Qt 的規範就好了 (詳見: Using Qt under LGPLv3
)
可是開源版本的 webOS OSE
一旦跟著遷移到 Qt 5.9
的話,就 真的要小心囉
,畢竟如果那時候產品不是走 LGPLv3,也沒有買 Qt 的商業授權, 結果又被 Qt 背後的公司 The Qt Company
發現的話,可是要 走法律途徑
的。
webOS OSE 用了多少 Qt?
了解到了 Qt 5.6.3
是最後一版具有 LGPLv2/LGPLv3
雙重授權的版本後,我們來看看如果要替換掉 webOS OSE 內的 Qt-based 的程式,有哪些要改掉:
程式名稱 | 用途 | 重要性 | 抽出 Qt 難易度 |
---|---|---|---|
luna-surfacemanager | QtWayland Compositor | 高 | 難,要重寫 |
qtwayland-webos | webOS 和 QtWayland 相關的擴充組件 | ||
qt-features-webos | 一些和 Qt 連動的設定檔 | ||
qml-webos-framework | QML 相關組件 | ||
qml-webos-components | QML 相關組件 | ||
qml-webos-bridge | QML 相關組件 | ||
maliit-framework-webos | 虛擬鍵盤 | ||
wam | 控制 Web App 用的 Web Application Manager | 高 | 中 |
ime-manager | 負責處理 input event,和 maliit-framework 連動 | ||
luna-syservice | 處理和設定、時間相關的 Luna bus 服務 | 中 | 中 |
由於 webOS OSE 的設計哲學是,一些速度要求比較快的部份採用 Qt 來實做,因此如果打算將 Qt 拔除的話,至少要有辦法替代掉 luna-surfacemanager 、 wam 這兩個項目,一個是用於 Wayland 的 Compositor (相當於 X11 的 Xserver + Window Manager),另外一個則是啟動 WebApp 時。用來控制程式的生命週期 (lifecycle) 的控制程式。
幸好, webOS OSE
使用的是自己以 Chromium
為基底移植的 Wayland 版本的 Chromium, 而非 LGPLv3
的 QtWebEngine
,因此假設你想要以 webOS OSE 為基礎,設計自己的產品的話,還是有辦法避免掉 Qt 的授權問題的。
結語
由於 Qt 5.6.3 已經停止支援了
,也許 webOS OSE
某一天就會說要升級到 Qt 5.7
以上的版本才能使用,到時候以 webOS OSE 為基底的產品,如果沒有注意到 LGPLv3
授權的要求的話,可能要預先準備一筆敗訴時使用的賠償費用才行。
從webOS OSE 用了多少 Qt?這邊的觀察結果來看,也許我們用別的 toolkit, 比如 gtk 去換掉這些 Qt 相關的組件,那我們還是有辦法避免掉 webOS OSE 升級 Qt libs 所帶來的影響的。
當然,因為主導者是 LG ,因此這部份還是要後續觀察,或是 購買 Qt 商業授權 你就什麼都不用煩惱了~
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 安全研究 | 传真机的攻击面研究报告
- IBM将建新AI研究中心,旨在开展“颠覆性研究项目”
- 清华人工智能研究院成立「知识智能研究中心」,发布四大知识平台
- 姚班天才少年鬲融凭非凸优化研究成果获得斯隆研究奖
- 大热下的 GNN 研究面临哪些“天花板”?未来的重点研究方向又在哪?
- 中国电信广州研究院与思博伦通信共同推动智能化承载网络测试技术研究
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Web Analytics
Avinash Kaushik / Sybex / 2007-6-5 / USD 29.99
在线阅读本书 Written by an in-the-trenches practitioner, this step-by-step guide shows you how to implement a successful Web analytics strategy. Web analytics expert Avinash Kaushik, in his thought-p......一起来看看 《Web Analytics》 这本书的介绍吧!