How does Bitrock handle .so dependencies (even Qt itself) in different distributions?
The (only?) positive thing about Windows is that binary compatibility between OS versions is an explicit goal. While I still was a Windows developer we had no problems moving software (including our kernel drivers) between NT4, W2K and later to XP. Of course I don't claim this is universal, because our packages were pretty self contained. Also, i realize that Vista introduced more significant changes and breakages compared to, say, XP.
Posted Nov 18, 2009 20:25 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
window's binary compatibility is like Java's source compatibility. it works all the time, except when it doesn't
yes it's a goal, and yes it works a lot of the time. but it doesn't always work.
for linux systems, you can take just about any binary from one distro and run it on another distro. the .so files are all named the same way so if they are there everything works.
the cross-linux-distro problem is more a matter of how to make sure that all the right packages are there, and where are all the config files than anything else.
there are a lot of companies selling software for linux, many of them charging lots of money for their software. some of them take a hard line attitude like 'we only certify RHEL 5.0, if you upgrade to RHEL 5.1 you are on your own', but many of the recognise that the distros are all more the same than they are different and instead say 'we have tested this on RHEL 5.0, it should work on anything else, contact us if you have problems'
the companies that take the first attitude are very slow to support any new distros or releases, frequently when a customer says 'I will buy your product if you support distro X' (I've done this to a few products).
companies that take the second attitude tend to be much faster to add 'supported' distros to their list.
who has a Mac? everyone!
Posted Nov 18, 2009 21:30 UTC (Wed) by boudewijn (subscriber, #14185)
[Link]
Basically, you package everything you need, Certainly all the Qt
libraries
you use, but also other libraries, we're not using the system Qt. It
doesn't solve everything: the gstreamer problem I mentioned above was
because we didn't want to package gstreamer as well, and the gstreamer on
ubuntu and gstreamer on OpenSUSE weren't binary compatible, so when we
packaged the Qt Phonon library, which uses gstreamer, we had problems. (Of
course, Phonon couldn't play mp3's on XP, but could play wav's while it
was the other way around on Vista.)
The set of libraries we package is almost the same on Windows, OSX and
Linux, by the way. On Windows we have to package the c runtime, as well,
that is the main difference.