Live data from Hacker News

Qt for WebAssembly Technology Preview

blog.qt.io

191–196 of 196 posts

Re: Qt for WebAssembly Technology Preview

#191

Earlier quoted context omitted.

I’m a big fan of native UI, but I doubt this particular claim. The web stack is almost certainly more performance than GTK, for example.

Apologies, when I say native software, I don't just mean the UI.

I don't agree on this count either. You can have performance and maintainability by writing your business logic in a daemon. Only very few applications will find this IPC cost unacceptable, and WASM promises to raise the performance ceiling even further. There are lots of good arguments for native software, but I don't find the performance argument to be particularly compelling.

Re: Qt for WebAssembly Technology Preview

#192

Earlier quoted context omitted.

Hello world in Qt is 25MB as a demonstration of 'lightweight' Qt.

hello.cpp: #include #include int main(int argc, char** argv) { QApplication app{argc, argv}; QLabel label{"hello world!"}; label.show(); return app.exec(); } build: $ g++ -O2 -g0 -fPIC hello.cpp -I/usr/include/qt -I/usr/include/qt/QtWidgets -lQt5Widgets -lQt5Core $ du -csh a.out 16K a.out seriously...

Try it again with Qt configured for -static and not -dynamic.

Re: Qt for WebAssembly Technology Preview

#193

Earlier quoted context omitted.

A few notes: 1) Qt Widgets development stopped with 5.0. I had bugs filed on the embedded Linux targets and was told "sorry, these will never be fixed". 2) #1 means that Qt wants you to use QML. I need to run a Javascript engine on my target? Note in the comments of that blog post that they hope to run on an A7 (or really fast M7)...someday. 2b) ...And if they do run on a lower end platform, you still need a POSIX O/…

> 1) Qt Widgets development stopped with 5.0. http://blog.qt.io/blog/2018/02/22/qt-roadmap-2018/ > So, quite many new things for Qt Quick users, but not to worry – we have not forgotten users of Qt Widgets. On the contrary, already during the past year we have been increasingly addressing open bugs of Qt Widgets and intend to continue doing so during 2018 and beyond. Both Widgets and Qt Quick have their strong points…

I'll believe it when I see it. That also kind of hints there were others like me that didn't believe in the QML future.

Re: Qt for WebAssembly Technology Preview

#194
post #150

Earlier quoted context omitted.

You are right, in this case it does not make sense since you can already distribute the Qt compiled version.

And even if you want to ship native code within your Electron app, why would you use wasm instead of the native code with ffi ?

This would of course have to be tested but there might be less overhead? I haven’t used FFI but they mention that it is significant. I have written a V8 add-on using NAN and the performance is very good (as in passing relatively large arrays between C++ and Node is in the few microsecond range)

Re: Qt for WebAssembly Technology Preview

#195
post #142

Earlier quoted context omitted.

Well it would be great if there weren't hundred of FOSS desktop variants....

This seems to be a common complaint as if we were all standing on a life raft pushing it down with the collective weight of our respective keisters. If only some people would stop contributing to creative work you don't see the value of and distributing it for free on the internet! At present you have Debian and a bazillion ubuntu derivatives using a debian package. ubuntu/debian are going to have different versions…

It is not only about package formats, since even when the format is the same, the expected directory layouts or installed libraries will be completely different.

No one really took FHS seriously, each installation is a special snowflake with its own GUI and dynamic libraries story across Linux variants is even worse than it was on other OSes.

Re: Qt for WebAssembly Technology Preview

#196

Earlier quoted context omitted.

hello.cpp: #include #include int main(int argc, char** argv) { QApplication app{argc, argv}; QLabel label{"hello world!"}; label.show(); return app.exec(); } build: $ g++ -O2 -g0 -fPIC hello.cpp -I/usr/include/qt -I/usr/include/qt/QtWidgets -lQt5Widgets -lQt5Core $ du -csh a.out 16K a.out seriously...

Try it again with Qt configured for -static and not -dynamic.

I compile a Qt Quick application statically for the Raspberry Pi on a regular basis, and the whole binary is around 7 megs big. If you remove Qt Declarative (Your hello world just requires QtCore) it will be a fraction of this size.

So nice to see people fabricating numbers and passing them off as data.

Post reply on HN