4
$\begingroup$

OR-Software is mostly available for LINUX.

Linux comes in different distributions, which are managed differently, so the question is:

Is there a LINUX distribution that should be preferred, when using/developing OR Software?

$\endgroup$
4
$\begingroup$

I don't think it matters much if you pick one the big ones (Fedora, RHEL, Ubuntu, Debian, Suse, etc), so its app repository has all the important apps (openjdk, maven, gcc, python, docker, ruby, ...). So sudo dnf install <app> or sudo apt-get install <app> should just work.

For OptaPlanner development, my entire team is on Fedora Linux, which shouldn't be a big surprise as we all work for Red Hat. Our open source contributors do use all kind of OS's and I can't recall any issues with those that use Ubuntu, Debian, etc. Less issues than those using Mac (.DS_Store) and far, far less than those using Windows (line endings (.gitattributes is a life saver), path separators, and of course the 260 path limit which can burn in hell).

Benchmarks do show that OptaPlanner (100% pure java) is significantly faster on Linux than on Windows, but that too is no big surprise, as I've seen that on many other Java applications too - I can't speak for non-java apps.

$\endgroup$
3
$\begingroup$

When you develop software, based on this answer, as long as you provide the libraries (lib files) and set the LD_LIBRARY_PATH accordingly, there are no differences between the different distributions.

$\endgroup$
2
  • 1
    $\begingroup$ Hi Oguz! The issue is, that the different distributions have different procedures for installing, maintaining the software. I wouldn't like to get into trouble because of that. I am sure that some distributions are friendlier than others for development. As Geoffrey above states, I should stay with one of the big ones. If they use Fedora with no problems, I should perhaps do the same. $\endgroup$
    – Clement
    Mar 11 at 13:06
  • $\begingroup$ For solvers written in C++, the system must have the right version of glibc installed (e.g. libraries compiled on Ubuntu 18.04 won't work on 16.04 because glibc is different). This means that even if the right shared libraries are present and linked, it won't work. Because glibc is a system library, this is not something the user can change safely unless they're a professional system admin. $\endgroup$ Mar 12 at 19:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.