Install older gcc - c++

I have Fedora 31 installed which has gcc 9.3.1 installed into it.
I want to install gcc 4.8.5 on my machine.
Tried compiling the gcc by downloading tar file from gnu website, but facing lot of compilation errors.
Can anone help me with the installation.
Thanks in advance.

The compiler you are looking for was in a Fedora release many many years ago and will be hard to reasonably get going on a current Fedora Linux system.
However, it is the compiler in RHEL 7, and therefore in CentOS. Your best bet is to install one of those operating systems in a virtual machine. (You can get RHEL for individual use through the RH Developer Program.) In Fedora Workstation, the Boxes program makes it easy to set up such a VM.
You could also use a docker or podman container, but that will take a little more understanding.

Related

How to run g++-6 on debian 10, need to compile older buildroot system (Cross compiling)

How to run g++-6 on debian 10, need to compile older buildroot files.(NCurves(host-ncurses-5.9) is crashing)
I have tried to patch the files in the buildroot but it like walking into a swamp.
Fixing one problem to find the next problem.
Tried compiling 6.3 compiler from source but this is crashing with the latest gcc-8 compiler.
Any suggestions? (I always assumed that older compilers should compile with newer compilers)
My other options are:
* Running virtual machine (VM or docker) with Debian Jessie
* Compile an older compiler with a docker GCC compiler.(No idea if this works)
* maybe turn off the compiling of the local files in buildroot? (Could not find any info on this)
There is a gcc-6 package available in Debian. So you just need to sudo apt install gcc-6. link
No reason to compile gcc from source unless you need a very specific version, but even then Docker is the far easier solution since gcc has an official repo on Docker Hub. I'd also double check that you have the proper ncurses dev library installed.
The overall best solution is to containerize the correct build environment (compiler, libraries, etc.), though. It ensures you'll always be able to build the product, especially if a re-factor is not viable.

Can't run uWebSockets on CentOS 7 with glibc-2.17

Error: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by /root/workspace/backend/node_modules/uWebSockets.js/uws_linux_x64_72.node)
Latest glibc version for CentOS 7 is 2.17.
I know that latest version for CentOS 8 is 2.30 but I can't upgrade, because my VDS depends on host's machine kernel (which is very old).
Is there any way to run/compile it with glibc-2.17 or update glibc?
EDIT:
My kernel version is 2.6.32-042stab141.3.
I can build it and install to /opt/glibc-2.18 without errors, but when I trying to use this I see Segmentation fault error.
P.S. I builded it successfully on Fedora 23 with same OpenVZ kernel.
I have built a custom binary (and tutorial) that will solve your exact problem.
Read it here: https://github.com/dominicklee/uWebSockets.js-for-Centos7
Is there any way to run/compile it with glibc-2.17
Yes: just do it (download source, build on your target machine, profit).
or update glibc?
You didn't say what your "very old kernel" is, but if GLIBC-2.18 supports it, then yes, you can update GLIBC.
However, any mistake you make in the process may make your system un-bootable. See this answer.

Cross-compile C++11/14 on CentOS for Windows

I've set up a CentOS 6.5 box running jenkins, among other things, which I want to use for building a project I'm working on with a couple of friends. It's designed to run on Windows, as we all have windows.
The problem I'm having is that I haven't found a cross-compiler that works on CentOS. Everything I've seen only works on Debian-based distros, and the few that I've found that have been presented as "working on red hat" don't actually work, or their methods of acquisition don't seem viable anymore.
It would be preferable that it supports C++11, or even C++14, as a couple of the guys I'm working on it with haven't ever delved into anything before C++11 and they're "scared of relearning half of what they know."
Everything I've searched for about MinGW or cross-compiling on CentOS has led to a dead end. Am I better off scrapping the installation and installing something debian-based like ubuntu server, or is there a cross-compiler that actually works to compile for windows on redhat distros?
You can use g++ C++ 11. For this you need to install it on your centOS machine. The installation procedure can be found on the following link - Install g++ C++ 11. I have been using this and it works fine.

GDC in fedora binary release

I search for GDC binary release (D2 -> D1 is on source forge) for fedora, but it isn't exists. Then I want to compile it from source code, but I don't know how to do it. There isn't any configure or make file in root directory. Are there any good soul who helps me with it? And yes, I found question D programming on fedora 16 but it isn't response to my question.
Lucky for you, I am working on GDC RPM, and I will soon announce it (once I test it) on the http://forum.dlang.org/group/digitalmars.D.announce newsgroup. At the moment I am testing the ARM build on my ODROID-U2 box. I will soon push the SPEC and the rest to a Git repository at https://gitorious.org/rpm-gdc . The RPM installs GDC into /opt/gdc .
Speaking about GDC, I also have a patched gcc.spec which can be used to re-build system's gcc with enabled support for the D programming language. I have never submitted it to Fedora people as I expect GDC to be in GCC soon...
Meanwhile, you may want to get DMD RPM from http://dlang.org (or build Fedora RPMs using my DMD SPEC from https://gitorious.org/dejan-fedora ) or LDC, which should already be in the Fedora repository. If not, grab it from http://koji.fedoraproject.org.

How to get libboost-thread1.46 on Ubuntu 12.10

Folks,
Our application is distributed in binary form to many of our customers. The application was compiled on Ubuntu 12.04 and is dependent on libboost-thread1.46.1, among other things.
All of our customers also have Ubuntu 12.04 on their servers and our application worked just fine.
As some customers have indicated that they might use Ubuntu 12.10 in future, we built a new box with Ubuntu 12.10 and tried to install the needed dependencies. However, libboost-thread1.46 is no longer found in Ubuntu standard repositories. The version that seems to be available is libboost-thread.49 and libboost.thread.50.
I am wondering if there is a way to install libboost.thread1.46 on Ubuntu 12.10. This would obviate the need for recompiling the application.
Thank you in advance for your help.
Regards,
Peter