Live data from Hacker News

Qt 6 will provide additional libraries via Conan package manager

qt.io

11–20 of 37 posts

Re: Qt 6 will provide additional libraries via Conan package manager

#11

I really don't understand the idea of a C/C++-specific package manager. C is the baseline API for most systems. Your system package manager is already installing C/C++ libraries and headers. Most platforms even have standard paths for storing C/C++ headers and libraries. Also as a C/C++ guy I could care less if the libraries are written in Brainfuck for what is worth, as long as their API stays usable from C, which i…

Isn't Docker a thing mainly due to the hassle that it is to manage libraries and headers in C/C++?

Re: Qt 6 will provide additional libraries via Conan package manager

#12

I really don't understand the idea of a C/C++-specific package manager. C is the baseline API for most systems. Your system package manager is already installing C/C++ libraries and headers. Most platforms even have standard paths for storing C/C++ headers and libraries. Also as a C/C++ guy I could care less if the libraries are written in Brainfuck for what is worth, as long as their API stays usable from C, which i…

There are two uses cases for package managers. One is as an end-user to install software, another as a developer to have a set of specific libraries to use.

For the latter, the version used varies per project. The former is typically system wide.

For my hobby projects, I indeed use cmake to generate .deb packages which I then use in other projects. For professional development I've never seen this work successfully.

Re: Qt 6 will provide additional libraries via Conan package manager

#13

I really don't understand the idea of a C/C++-specific package manager. C is the baseline API for most systems. Your system package manager is already installing C/C++ libraries and headers. Most platforms even have standard paths for storing C/C++ headers and libraries. Also as a C/C++ guy I could care less if the libraries are written in Brainfuck for what is worth, as long as their API stays usable from C, which i…

Sure there is a barrier and it is the same as for other programming languages.

If you rely on your package manager, you are basically stuck with whatever was in the previous LTS of ubuntu when it was shipped.

If you want the newest library, then you are either dependent on some external proper packager, or you have to get into packaging yourself. I don't consider picking a random external source something I would do in a professional context.

But if we open up the choice of library versions from "non-standard" versions, the problem becomes a transient one. Team A in location B needs at least version X, but not version Y, team C in location D won't do with version Z.

To give that kind of flexibility, people went for build from source instead (Go, Java,...)

And in every shop I have worked until now, "your package manager" meant usually having to support at least one linux distribution in two versions, Windows and Mac, which do not have a native package manager.

Re: Qt 6 will provide additional libraries via Conan package manager

#14
post #7

How about you switch to a free licence such as a two-clause BSD or an MIT licence?

If you pay them enough ... they seem to struggle and are searching for ways to get revenues. Alternatively they have to go bankrupt, then the agreement with KDE Kicks in and it becomes BSD https://kde.org/community/whatiskde/kdefreeqtfoundation/ (but in that case one has to ensure somebody continues working on it ... no idea if KDAB and KDE have enough manpowwer ...)

With Electron (MIT licence) the writing has been on the wall for Qt for years now. They are on borrowed time.

I am not saying I like Electron better. I prefer Qt, even though I don't consider it to be native either. But Qt would not have died had they relicenced earlier. It's evident they will have to do it eventually. Why wait until there's no more lunch to be eaten?

Re: Qt 6 will provide additional libraries via Conan package manager

#15

I really don't understand the idea of a C/C++-specific package manager. C is the baseline API for most systems. Your system package manager is already installing C/C++ libraries and headers. Most platforms even have standard paths for storing C/C++ headers and libraries. Also as a C/C++ guy I could care less if the libraries are written in Brainfuck for what is worth, as long as their API stays usable from C, which i…

Your system package manager typically also sucks for keeping multiple versions/variants of libraries around, and library developers aren't particularly interested in providing packages for many different systems. Not all platforms even have a system package manager you can easily add your own packages to.

Re: Qt 6 will provide additional libraries via Conan package manager

#16
post #14

Earlier quoted context omitted.

If you pay them enough ... they seem to struggle and are searching for ways to get revenues. Alternatively they have to go bankrupt, then the agreement with KDE Kicks in and it becomes BSD https://kde.org/community/whatiskde/kdefreeqtfoundation/ (but in that case one has to ensure somebody continues working on it ... no idea if KDAB and KDE have enough manpowwer ...)

With Electron (MIT licence) the writing has been on the wall for Qt for years now. They are on borrowed time. I am not saying I like Electron better. I prefer Qt, even though I don't consider it to be native either. But Qt would not have died had they relicenced earlier . It's evident they will have to do it eventually. Why wait until there's no more lunch to be eaten?

"They" (Qt Company) are a commercial enterprise that mostly makes its money from license sales. Relicensing as MIT would be terrible for them. From their product policy you can clearly tell that even LGPL isn't working as they would like, but they can't get rid of that, so they focus in fields that don't like LGPL either. That's of course annoying for those of us who don't optimize for "what makes them money", but for "how can we build software best"...

Re: Qt 6 will provide additional libraries via Conan package manager

#17
post #14

Earlier quoted context omitted.

If you pay them enough ... they seem to struggle and are searching for ways to get revenues. Alternatively they have to go bankrupt, then the agreement with KDE Kicks in and it becomes BSD https://kde.org/community/whatiskde/kdefreeqtfoundation/ (but in that case one has to ensure somebody continues working on it ... no idea if KDAB and KDE have enough manpowwer ...)

With Electron (MIT licence) the writing has been on the wall for Qt for years now. They are on borrowed time. I am not saying I like Electron better. I prefer Qt, even though I don't consider it to be native either. But Qt would not have died had they relicenced earlier . It's evident they will have to do it eventually. Why wait until there's no more lunch to be eaten?

How do you know it would have died? - Mind that their business is in embedded stuff, an area where Electron is no competition (putting a bit more hardware in and embedding android might be competition, but Qt runs on quite small systems) https://www.qt.io/product/develop-software-microcontrollers-...

As an outsider it seems like the "Desktop" side seems to be a marketing vehicle, but not their bet for business (see also push for QML over QWidgets - less integration with desktop and less "native" looks, but working on cheaper hardware)

Re: Qt 6 will provide additional libraries via Conan package manager

#18

I really don't understand the idea of a C/C++-specific package manager. C is the baseline API for most systems. Your system package manager is already installing C/C++ libraries and headers. Most platforms even have standard paths for storing C/C++ headers and libraries. Also as a C/C++ guy I could care less if the libraries are written in Brainfuck for what is worth, as long as their API stays usable from C, which i…

Isn't Docker a thing mainly due to the hassle that it is to manage libraries and headers in C/C++?

That is not C/C++ specific, from what I saw, most "dynamic" languages picked it up rather more enthusiastically. Resolving the conflict of different library dependencies that arises in almost all languages. And with docker I can solve it in a uniform way. If you install something in the system, it will mess it up for others. Some languages do have "native" ways to avoid that, e.g. python has virtualenv, ruby has bundler, java classpaths?... but I still can mess up the system. And it isn't like there are different ways how it is then solved.

But with docker, I package and isolate the whole OS. So, as a consumer, I do not have to know how to do that for each language, and as a producer, I can do (almost) whatever I want within the container without fearing to mess up other containers or the hosting OS.

Yes, this whole approach has its own downsides. But those things are a plus, I would say.

Re: Qt 6 will provide additional libraries via Conan package manager

#19

I really don't understand the idea of a C/C++-specific package manager. C is the baseline API for most systems. Your system package manager is already installing C/C++ libraries and headers. Most platforms even have standard paths for storing C/C++ headers and libraries. Also as a C/C++ guy I could care less if the libraries are written in Brainfuck for what is worth, as long as their API stays usable from C, which i…

"Most platforms" unfortunately excludes Windows, which is too popular to ignore.

Re: Qt 6 will provide additional libraries via Conan package manager

#20
post #15

I really don't understand the idea of a C/C++-specific package manager. C is the baseline API for most systems. Your system package manager is already installing C/C++ libraries and headers. Most platforms even have standard paths for storing C/C++ headers and libraries. Also as a C/C++ guy I could care less if the libraries are written in Brainfuck for what is worth, as long as their API stays usable from C, which i…

Your system package manager typically also sucks for keeping multiple versions/variants of libraries around, and library developers aren't particularly interested in providing packages for many different systems. Not all platforms even have a system package manager you can easily add your own packages to.

Linux package managers have no problem with multiple versions of a library: https://unix.stackexchange.com/a/209712
Post reply on HN