TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Qt Binding for Go with Support Desktop, Mobile and Embeddable

88 pointsby w3clanover 5 years ago

7 comments

derefrover 5 years ago
It looks like this binding has a compile option where Qt itself is statically linked into the resulting executable. That gives this stack (Go+Qt) a <i>very</i> unique deployment story.<p>There are a lot of people (I&#x27;m looking at you, console home-brew community) who build all their little tools to go along with their projects as native GUIs, usually with C# + WinForms—not particularly because they have Windows-specific functionality, but more because they have at least some <i>native</i> functionality (so Electron is out) and C#+WinForms allows them to just make releases as a standalone .exe you can &quot;just&quot; download and run (at least on modern Windows), without needing to first install some external runtime.<p>This could be a good <i>multiplatform</i> alternative to the C#+WinForms stack, with all the same advantages. (The only con being that statically-linked Qt is pretty dang large.)
评论 #21633680 未加载
评论 #21638796 未加载
评论 #21633934 未加载
评论 #21634525 未加载
评论 #21635121 未加载
mappuover 5 years ago
We ship a C++&#x2F;Qt&#x2F;Go application at $DAYJOB. The C++ and Go parts communicate by IPC so I would love to get down to a single language - Qt is the main reason why C++ is involved at all. A Go binding for Qt (Widgets) would seriously solve a lot of issues for us.<p>But this binding is LGPL, so<p>- we can&#x27;t include it in a closed-source statically-linked Go application as-is;<p>- this binding plans to offer a commercial license but it isn&#x27;t available yet;<p>- dynamic linking of a Go package (i.e. `-buildmode plugin`) is possible on Linux but not on Windows.<p>There&#x27;s also the similar <a href="https:&#x2F;&#x2F;github.com&#x2F;kitech&#x2F;qt.go" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;kitech&#x2F;qt.go</a> that works by LoadLibrary&#x2F;dlsym&#x27;ing the Qt dll&#x2F;so files, that has the same LGPL + no-commercial-alternative license.
评论 #21634507 未加载
评论 #21636195 未加载
apiover 5 years ago
This is much more basic but also considerably smaller.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;andlabs&#x2F;ui" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;andlabs&#x2F;ui</a><p>I really wish libui had more support and momentum. It&#x27;s literally the only sane cross platform UI project in existence. Everything else is not native (html5 guis), has no accessibility support (all the immediate mode ones), is ancient and ugly (wxwidgets), or is bloated (qt).
评论 #21636254 未加载
xeeeeeeeeeeenuover 5 years ago
I&#x27;m curious whether those bindings were written entirely by hand or perhaps some generator was used.
评论 #21634626 未加载
cjensenover 5 years ago
The license looks like a mess. They claim their own code is LGPL, but it looks like some of their code links to GPL modules (e.g. serialbus).<p>To my mind, this is entirely GPL and heaven help anyone who mistakes it for LGPL.
linux2647over 5 years ago
I&#x27;ve never seen Qt run in a web browser. It&#x27;s weird but cool
评论 #21636293 未加载
_pmf_over 5 years ago
I predict that we will see a renaissance of CORBA &#x2F; COM MIDL in the form of WebAPI IDL as new IPC standard, bringing interoperability back to where it was around 1995.