Live data from Hacker News

Qt Group Buys IAR Systems Group

qt.io

21–30 of 53 posts

Re: Qt Group Buys IAR Systems Group

#21

I'm familiar with the normal MSVC/Clang/GCC/EDG C++ compilers, but not IAR's. They seem to make C++ compilers for embedded systems. Does anyone know if these are their own, or based on something like Clang? Their supported standards list 'libc++' [1] which implies LLVM and potentially Clang. I could not find info online. "IAR Embedded Workbench C++ is dialectal and contains some features not part of standard C++." [2…

I'm not sure there's much overlap in use cases, considering the two very separate classes of 'embedded'; Qt is used on Linux capable devices and IAR is MCUs why would Qt want to customize a compiler when they still need to support llvm/gcc/msvc?

There's a class of high-spec microcontrollers that have a ton of RAM and flash and built-in support for stuff like touchscreens. It looks like Qt is able to run on these: https://www.qt.io/platform/develop-software-microcontrollers... . I'm not sure how much of their business is people targeting bare-metal microcontrollers, but there is at least some overlap.

Re: Qt Group Buys IAR Systems Group

#22

I'm familiar with the normal MSVC/Clang/GCC/EDG C++ compilers, but not IAR's. They seem to make C++ compilers for embedded systems. Does anyone know if these are their own, or based on something like Clang? Their supported standards list 'libc++' [1] which implies LLVM and potentially Clang. I could not find info online. "IAR Embedded Workbench C++ is dialectal and contains some features not part of standard C++." [2…

IAR has their own backend and I believe front-end as well. They routinely smoked GCC and Clang, and sometimes ARMs tools on a variety of tasks. I'm not sure I see the advantage on Qt owning a compiler though - one of Qt's strengths is portability.

The advatage might be they can ensure the compiler supports the new features qt wants to use.

reflection could replace moc, (likely c++29 needed) but if compilers don't implement that part of reflection qt can't use it. If qt can get compilers updated that helps them.

Re: Qt Group Buys IAR Systems Group

#23
post #6

I have a C++ seasoned colleague who says that It framework went behind the current C++ standard, however I remember Qt Framework much cleaner than C++ itself (by making a sort of a enhanced subset), and would prefer use it. What are your opinions?

Take this with a grain of salt because it's been about 10 years since I slung serious C++. Just my opinion of course, but if you go all-in with the Qt libraries, it's a lot better (and safer). Most people only think about Qt as a GUI framework, but it's much, much more than that. It's a very rich set of libraries that do way more than just UI. We actually used Qt for our server too! So I agree with you, Qt tends to b…

Modern c++ does some things better than qt, others it is still worse. Just unique ptr is better than qt's parent-child object model (memory management only, parent child is useful for other things)

Re: Qt Group Buys IAR Systems Group

#24
post #22

Earlier quoted context omitted.

IAR has their own backend and I believe front-end as well. They routinely smoked GCC and Clang, and sometimes ARMs tools on a variety of tasks. I'm not sure I see the advantage on Qt owning a compiler though - one of Qt's strengths is portability.

The advatage might be they can ensure the compiler supports the new features qt wants to use. reflection could replace moc, (likely c++29 needed) but if compilers don't implement that part of reflection qt can't use it. If qt can get compilers updated that helps them.

Relevant link regarding Qt moc and reflection https://wiki.qt.io/C%2B%2B_reflection_(P2996)_and_moc

Re: Qt Group Buys IAR Systems Group

#25
post #16

I once tried to get a IAR C++ embedded codebase to compile with g++ and it's stdlib on a very small chip. It eventually compiled but never worked. I'll have to rewrite it in C instead. There were many hacks, like filling the stack with sentinels to detect it at run-time. The linker script was horrible. Rewrote everything from scratch. The resulting code was many KB too large for the available space, it would have nee…

If IAR was able to make the existing C++ codebase fit in the chip's flash and GCC wasn't, that seems like a win for IAR. If you're selling products in volume, the cost of the IAR license is dwarfed by the amount of money you save by using a part with less flash.

Re: Qt Group Buys IAR Systems Group

#26
post #16

I once tried to get a IAR C++ embedded codebase to compile with g++ and it's stdlib on a very small chip. It eventually compiled but never worked. I'll have to rewrite it in C instead. There were many hacks, like filling the stack with sentinels to detect it at run-time. The linker script was horrible. Rewrote everything from scratch. The resulting code was many KB too large for the available space, it would have nee…

Honestly I'd be willing to blame GCC for that one. IME its output is atrocious for embedded stuff. Few optimizations for the chips I use and absolute nonsense assembly trying to emulate CPU instructions GCC doesn't know exist in hardware. Binaries are regularly 3x larger than they should be. It's so awful I had to end up writing my tight loops in straight assembly because GCC couldn't handle incrementing a damn pointer in a sane way.

Re: Qt Group Buys IAR Systems Group

#27
post #25
post #16

I once tried to get a IAR C++ embedded codebase to compile with g++ and it's stdlib on a very small chip. It eventually compiled but never worked. I'll have to rewrite it in C instead. There were many hacks, like filling the stack with sentinels to detect it at run-time. The linker script was horrible. Rewrote everything from scratch. The resulting code was many KB too large for the available space, it would have nee…

If IAR was able to make the existing C++ codebase fit in the chip's flash and GCC wasn't, that seems like a win for IAR. If you're selling products in volume, the cost of the IAR license is dwarfed by the amount of money you save by using a part with less flash.

Depends on what volume means. I would argue most people aren't working on projects in the million of units volume where that cost savings isn't worth it.

Re: Qt Group Buys IAR Systems Group

#28
post #19
post #5

Earlier quoted context omitted.

Everytime a QT post comes someone bitch about the licensing model. And every time I google and try understand what is wrong with the licensing model. And everytime I end up confused about it. Could you kindly ELI5 me what is wrong with QT licensing model?

Because it’s unclear and incomplete. Always prone to some KDE whims.

KDE is an independent project from Qt and the only say they have is they have the right to release Qt under a BSD license if Qt Group removes the GPL option ( https://kde.org/community/whatiskde/kdefreeqtfoundation/ )

Re: Qt Group Buys IAR Systems Group

#29
post #23

Earlier quoted context omitted.

Take this with a grain of salt because it's been about 10 years since I slung serious C++. Just my opinion of course, but if you go all-in with the Qt libraries, it's a lot better (and safer). Most people only think about Qt as a GUI framework, but it's much, much more than that. It's a very rich set of libraries that do way more than just UI. We actually used Qt for our server too! So I agree with you, Qt tends to b…

Modern c++ does some things better than qt, others it is still worse. Just unique ptr is better than qt's parent-child object model (memory management only, parent child is useful for other things)

It kind of drives me crazy trying to have a modern C++ codebase which uses smart pointers everywhere, yet every touch point with Qt involves manually allocating memory and passing the pointers into some magical Qt blackbox which hopefully frees the memory when appropriate.

Re: Qt Group Buys IAR Systems Group

#30
post #25

Earlier quoted context omitted.

If IAR was able to make the existing C++ codebase fit in the chip's flash and GCC wasn't, that seems like a win for IAR. If you're selling products in volume, the cost of the IAR license is dwarfed by the amount of money you save by using a part with less flash.

Depends on what volume means. I would argue most people aren't working on projects in the million of units volume where that cost savings isn't worth it.

Lots of people are. It's usually small systems. Think PIC or RL78, 16 bit MCU's maybe some Cortex M. But they're everywhere and sold in the millions and you never even think about it unless something goes wrong and then you cuss at them.
Post reply on HN