Results 1 to 9 of 9

Thread: Which Linux distribution is best for building compatible apps?

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Jan 2006
    Location
    Germany
    Posts
    4,380
    Thanks
    19
    Thanked 1,005 Times in 913 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows Symbian S60
    Wiki edits
    5

    Default Re: Which Linux distribution is best for building compatible apps?

    Quote Originally Posted by Oxidative View Post
    That would require to build the app on all those distributions seperatly, no?
    No, you can create the packages for all distros on your own machine. And only once. The executable is only packed in a different way in deb or rpm, but the executable is the same using gcc***. The distros find the needed libraries themselves.

  2. #2
    Join Date
    Jun 2007
    Posts
    4
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: Which Linux distribution is best for building compatible apps?

    Quote Originally Posted by Lykurg View Post
    No, you can create the packages for all distros on your own machine. And only once. The executable is only packed in a different way in deb or rpm, but the executable is the same using gcc***. The distros find the needed libraries themselves.
    I'd have to figure out the required dependencies for every distribution. I don't want to write a specific package for every possible distribution out there. Providing distribution specific packages is a job for the packaging community, not for me as a developer.

    The best way is to provide source code of your application. This is compatible with every linux distro. You can even provide a .spec file for your package that will build the package by calling qmake, make and make install on every possible rpm-based distro.
    I totally agree with you, offering the source package is a must. But those packages are for more advanced users or package builders. I want to offer a package for the convenient users, who don't care about installing the software a "proper way", who just wants to be able to run the software somehow. As far as I can see, a .spec file will always be for a specific distribution because of the dependencies. And then again, not every distribution is using rpm or deb...

  3. #3
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,368
    Thanks
    3
    Thanked 5,018 Times in 4,794 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Which Linux distribution is best for building compatible apps?

    Quote Originally Posted by Oxidative View Post
    I'd have to figure out the required dependencies for every distribution. I don't want to write a specific package for every possible distribution out there. Providing distribution specific packages is a job for the packaging community, not for me as a developer.
    That's why sticking to LSB is the best choice if you want to distribute your application in a binary form.


    I totally agree with you, offering the source package is a must. But those packages are for more advanced users or package builders. I want to offer a package for the convenient users, who don't care about installing the software a "proper way", who just wants to be able to run the software somehow. As far as I can see, a .spec file will always be for a specific distribution because of the dependencies. And then again, not every distribution is using rpm or deb...
    You can't satisfy them all. You can provide an installer script that will call qmake (or cmake), make and optionally make install and will build the application in the background. If your application only depends on Qt, this shouldn't be a problem (even if you want to distribute a .spec file). But in general unless you build your application statically, there is a chance your application won't work on some of the distros. And even that won't make your application run on different architectures. Sometimes people tend to forget the world is something more than just x86.
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


  4. #4
    Join Date
    Nov 2007
    Posts
    53
    Thanked 3 Times in 2 Posts
    Qt products
    Qt4
    Platforms
    Windows

    Default Re: Which Linux distribution is best for building compatible apps?

    Hello,

    I asked (and still think about it) myself the same questions.

    You are right and I already posted about it on this forum, the best Linux distro to build an app is CentOS / RHEL because this is the only one that is maintained for 7 years so you can run a security updated OS with old libs.

    So, you can be sure that all the other Linux distros maintained will use fresher libs.

    I used until recently CentOS 3 but with Qt 4.5, it began to be a pain to compile Qt so I switched to CentOS 4. CentOS 3 will expire next year so it was not so important to stick with it.

    Next, how to distribute your app. If you don't use exotic libs, I think all dependencies will be met if someone install a popular Linux distro in a standard way (without stream-lined it too much).

    So the bash wrapper script with LD_LIBRARY_PATH could be the best (if you need to link dynamically, it's required if you want to use the LGPL release of Qt) and it will be simple for users to untar and unzip it and use it without the need to be root to install the software.

    But in case of explicit needs when you really need dependencies or doing some stuffs on the system when installing, I have wrapped binary and Qt libs (all build on the CentOS 4) in a deb file on the latest Debian (it run fine both on Debian & Ubuntu) and on a RPM that seems to be generic enough to run both on Red Hat / Mandriva & SuSE systems

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Qt is a trademark of The Qt Company.