Is it possible to Migrate from RHEL 5.11 to RHEL 7.1? - rhel

I want to upgrade the current RHEL version for one of my production system. The current version is RHEL 5.11. Is it possible to install and migrate old setting to RHEL 7.1 without any challenges?

It is possible, though not without "challenges".
See How do I migrate from RHEL5 to RHEL7? A direct upgrade path is not supported by Red Hat, but the linked article contains detailed information about all aspects of the process.
See also Does Red Hat support upgrades between major versions of Red Hat Enterprise Linux? for general info about upgrades between major versions of RHEL.

Related

Using C++14 on Linux and shipping binaries targeting different Linux releases

I’m developing a cross-platform server software using C++14 and I want to be able to ship it as a binary to different versions of Windows and Linux. For Windows have I created a binary with all dependencies statically linked. I successfully been able to install and run this binary on all versions of Windows Server.
How can I generate a binary for Red Hat Enterprise Linux that can run on RHEL6.4 or later?
To get support for C++14 on Linux, it seems I would need to use version 5 or later of GCC? No version of Red Hat Enterprise Linux seems to be delivered with a GCC version that support C++14? If I have understood it correctly, I need to use Red Hat Developer Toolset 4.1.0 to get a GCC version that supports C++14?
Red Hat Developer Toolset 4.1.0 seems to only supports RHEL6.5 and later, but I can live with that. So if I use Red Hat Developer Toolset 4.1.0 and compile my software on RHEL6.5, how should I link it?
When reading the Developer Toolset 4.1.0 documentation it seems to exist an ABI compatibility issue and Red Hat recommends the use of -std=c++98 for production software development? Does this mean I can’t use C++14 and create a binary that can run on different Linux version, even within the same type of distribution?
Any help on clarifying this issue would be greatly appreciated.
I can tell you what is done for the product that I help develop.
We build our own versions of GCC and binutils on every UNIX/linux distribution that we are targeting for release, and build our sources with that. We also vendor in to our sources all C++ libraries on which we depend (like boost, etc.). Finally, we statically link libstdc++ from our custom toolchain.
The result is that we have binaries that only depend on the C interface associated with each specific linux distribution, which lets us use whatever version of the C++ standard that we want during development.
We then publish packages and binary tarballs for each distribution.
We also build a "generic" version (built, as always, with our custom toolchain) on a very old linux system, and with many features disabled so that we don't pick up dependencies on the required/supporting system libraries. That version depends on very few system libraries beyond libc and libpthread, so can be run on almost any linux distro that ships with the libc minimum.

Shared library compatibility issue

Trying to use the nsocr (an OCR based application) shared library namely libjnsocr.so & it works successfully on a Ubuntu system. When running the same on a RHEL 5.1 box, I get an error as
ERROR_DLLNOTLOADED 0x70010002 or Cannot find or load the "NSOCR.dll" file.
One of the issues that might be the source is that Ubuntu runs on a recent version of Linux kernel i.e. 4.2 whereas the server where I am running the program is on kernel version 2.6 which is very old.
Please let me know if there is some way to make this file compatible for the older kernel. Appreciate any other inputs.
When running the same on a RHEL 5.1 box, I get an error as
... Would probably work if you used like Ubuntu 7.04 to create the
libraries / the application.
Say libjnsocr.so depends on e.g. libc6 version 2.11 or later. Redhat 5 has glibc-2.5 ( = libc6-2.5 ) : No chance that any contemporary application can work.

redhat enterprise 6.1 Linux compatible softwares

I am planning to install my j2EE, spring rest based application on Red Hat Enterprise Linux 6.1. I want to know about the software version which is compatible. I am not sure whether all the new versions are compatible in REL 6.1.
The list of software's I need to install are
J2EE
Apache Tomcat
SpringRest
MySQL
The RHEL 6.1 can easily be updated for the latest versions of Java, Tomcat. For the latest MySQL, if there are dependencies not present in RHEL 6.1 then you could try either adding or updating them (using yum or building from source).
J2EE: Download from Oracle Java SDK download page [I believe you want JDK since the J2EE dependencies would be provided by Tomcat such as Servlet etc]
Apache Tomcat: Download the binaries from the tomcat apache website [http://tomcat.apache.org/]. That should be enough to get you started. If later on you would like to use openssl or apache portable runtime then that is easily setup as well. The tomcat documentation has useful documentation to set it up.
SpringRest: I believe you are referring to the java archives for it. You can use Maven to download the necessary dependencies or use Spring Boot (https://spring.io/guides/gs/rest-service/) or search Google for the many examples of bundling Spring dependencies with your application.
For MySQL: refer to http://dev.mysql.com/doc/mysql-repo-excerpt/5.6/en/linux-installation-yum-repo.html

JavaFX on Linux

What is the situation with JavaFX on Linux (x86 and x64)?
Can a JavaFX app be executed without problems on Linux OS?
I have found some questions from years 2011 and 2012, when apps were not stable!
The current version of JFX released is 2.2.4 and it is quite stable on Linux. However, it will become very much better when Java 8 would be released as it would contain JFX 8 distibution. You can try it yourself now using java 8 early access builds.
JavaFX 8 runs fine on Linux in my experience, the only requirement appears to be libgtk 2.18+. There are full details on Oracle JDK 8 and JRE 8 Certified System Configurations. Working Linux versions include:
Ubuntu 10.04 (and possibly earlier, 10.04 had libgtk 2.20)
Redhat 6
Possible problems you may encounter
3D scene support - requires specific modern GPUs + recent drivers, note there is no software rendering fallback for this, and no plans to - see mailing list question
Video playback requires certain version of libavcodec
OpenJDK does not yet include javafx, only the oracle distribution. Update July 2016 - openjfx package now available .on Ubuntu 16.04...
Javafx runs on JVM(Java Virtual Machine) like all other java applications. It doesn't matter whether you run the javafx application on windows or linux or mac there is no doubt that it will not run. That's why java is called platform independent language. Now stable version of javafx 8 has been released with more features.

Installing MonoDevelop on Suse Enterprise 10.0

I tried to install MonoDevelop on Suse 11.0 Enterprise, using the 1-click install on the MonoDevelop download page, but quickly wound up in a tangle of missing dependencies. I then tried using the Suse software repositories to get MonoDevelop, and waded through several of the dependencies for awhile trying to get the necessary packages to fulfill the dependencies, but some of the packages in the Suse repositories actually appear to be missing the needed RPM files. Are these repositories no longer being actively maintained?
I am aware that there is a CD on the Mono site (called the Mono LiveCD) that appears to contain a complete installation of the development environment, as well as a DVD for OpenSuse 11.2 (on the OpenSuse site) that might actually have all of the Mono software already installed. But the target environment for the utility I am writing is Suse 11.0 Enterprise Server. Does that matter?
What is the shortest distance between two points here?
that might actually have all of the Mono software already installed.
It has all of the Mono software installed ( of course it depends on what do you mean 'all') Last time when i tried it, the installation included Mono itself, monodevelop, MoMa and some software, written in Mono ( gome-do, for example ). I did not perform any additional steps for migrating my solution from a windows machine. the one thing worth to mention, monodevelop crashed several times, but i think it was memory-related ( an image had access only to 512 mb of RAM ).
But the target environment for the
utility I am writing is Suse 11.0
Enterprise Server. Does that matter?
In theory, it does not. You will have to check Mono versions of course, but i don't think you will face any problems during migration process. As far as i know, Suse 11.0 comes with Mono 2.0 pre-installed. With a latest life-cd you are going to develop using mono 2.6. There were some major changes ( partial LINQ to SQL suport ) you will have to compare changelog's of course.
If you're trying to install Mono on Suse Linux Enterprise Server, you need to download the Mono Extension Pack (available here). In SLES 11 it was separated out into a separate product in order to decouple the support life cycle from that of the general distribution. This allows them to release more often.
The add-on is available for x86, x86_64, and IBM System Z.

Resources