Currently, MinGW's only installs the 3.x.x series of the gcc compiler by default. However, it looks like the 4.x.x series of compilers have been out for some time, and as others have mentioned, it seems to work just fine. Is there any reason why it hasn't moved to the 4.x.x versions yet, and any reason why I shouldn't use the newer versions of gcc?
Why isn't the gcc 4.x.x series compilers installed by MinGW by default?
1k Views Asked by Robert P At
3
There are 3 best solutions below
1
Jerry Coffin
On
The issue appears to be that they've changed the exception handling mechanism in a way that breaks the ABI. That means you can't (for example) drop in the new compiler and continue to use old object files and/or libraries. You have to re-compile everything from source code to get working results at all.
0
Rob Kam
On
The TDM GCC/MinGW32 builds installer includes gcc 4.4.x and all the core binary packages required for basic Windows development, including gdb. It's widely used without any unusual problems.
Related Questions in C++
- How to immediately apply DISPLAYCONFIG_SCALING display scaling mode with SetDisplayConfig and DISPLAYCONFIG_PATH_TARGET_INFO
- Why can't I use templates members in its specialization?
- How to fix "Access violation executing location" when using GLFW and GLAD
- Dynamic array of structures in C++/ cannot fill a dynamic array of doubles in structure from dynamic array of structures
- How do I apply the interface concept with the base-class in design?
- File refuses to compile std::erase() even if using -std=g++23
- How can I do a successful map when the number of elements to be mapped is not consistent in Thrust C++
- Can std::bit_cast be applied to an empty object?
- Unexpected inter-thread happens-before relationships from relaxed memory ordering
- How i can move element of dynamic vector in argument of function push_back for dynamic vector
- Brick Breaker Ball Bounce
- Thread-safe lock-free min where both operands can change c++
- Watchdog Timer Reset on ESP32 using Webservers
- How to solve compiler error: no matching function for call to 'dmhFS::dmhFS()' in my case?
- Conda CMAKE CXX Compiler error while compiling Pytorch
Related Questions in GCC
- File refuses to compile std::erase() even if using -std=g++23
- the difference between two style of inline ASM
- Why veneer code generated by gcc for cortex-m0 seems 8-byte aligned?
- How to compile the Linux kernel with -O0 for more detailed debug?
- GMP Windows installation "configure: error: could not find a working compiler"
- Unable to run get .exe file from assembly NASM
- Problem with compiling c++ project that is running python code using Python.h -> undefined reference
- How to use a newer linker and glibc in a Kotlin/Native project?
- "Config.guess failed to determine the host type" when trying build binutils-2.7 with Cygwin
- Trying to compile GCC returns a bunch of errors
- Compiling with gcc fno-common option causes performance degradation
- On cygwin I get errors containing -lintl and -liconv when running gcc
- Constant function pointer optimization
- How to obtain mingw-w64 version 9.3.0 or older for MSYS2?
- How to fix this error in terminal while writing hello world code in VS Code on C?
Related Questions in MINGW
- How do I print _Decimal32, _Decimal64, and _Decimal128 in C? (Also, what is a Printf hook and how do I add one?)
- How to install CMAKE on MSYS2 or MINGW64? (all servers return 404)
- How to obtain mingw-w64 version 9.3.0 or older for MSYS2?
- Dev c++ [Linker error] undefined reference to `__chkstk_ms'
- Making portable execution errors
- How to compile GLFW with GCC
- why cpp codes is not getting compiled even after i installed cpp extension?
- clang++ and mingw paths start with double slash while compiling
- Install of MINGW fails when installing from MSYS2
- Compile latest openssl with mingw64 within cygwin on Windows 11 vs install prefix path definition
- Compiling C file with MingW in Windows: The system cannot execute the specified program
- Qt Creator Application Crashing Issue
- Undefined reference in MinGW after moving from VC++
- MinGW ld linking error - undefined reference
- DLL built from static lib is flashing a console
Related Questions in GCC4
- How can I compile and install multiple copies of gcc into /usr/local and have the binaries in /usr/local/bin reflect their version?
- How is the address of the .rodata section determined in ELF files compiled using GCC and ld?
- Assembler error in MIPS build of Boost.Test program
- undefined reference to `__gnu_cxx::__exchange_and_add(int*, int)'
- Declaring and initializing a completely `const` `char *argv[]`
- Why does a virtual destructor write to memory?
- C++ implicit conversion and universal forwarding on gcc 7.5
- how to hide local symbol for linux static library
- Check wheter atomic ptr is not initialized in gcc 4.4.7 (without nullptr)
- Clarification required on gcc option -mcmodel=medium
- is there any way to use google test tool on gcc 4.5.2 compiler?
- How to control or optimize or remove or deallocate unused memory in UNION's
- Translate Inline Assembler of Codewarrior to GCC Inline Assembler
- problem compiling with different gcc versions
- Puzzling introduction of temporary in `* const&` on older C++ compilers
Related Questions in GCC3
- Which section of the modern compiled code controls the exit of a c program?
- Trying to validate the complete loading of a page in selenium python through a VM
- Enabling long long in C89 at GCC 3.2, 4.4 and 5.4
- How to fix "Section .vectors overlaps section .data " | Adding ATmega1281 Support to Compiler
- Found some old code using __single_client_alloc - how can I revive it?
- "undefined reference to _spill" : What is _spill and why does gcc want to access it?
- Error when assembling for AT91SAM9261EK
- Having static const variables with GCC 3.3 similar to GCC 3.4
- Strange behavior when casting an int to float in C
- How does hash_set in C++ work?
- Error compiling GCC 3.4.6 in Ubuntu 14.04
- Should gcc builtins always be resolved during the compilation step, or the linker step?
- gcc-3.4 compilation error
- Compiling qemu neo with gcc3.4
- gcc reports "will never be executed" about the line: while(fgets(line, MAX_LINE, stdin) != NULL)
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
GCC4's C++ ABI has changed from GCC3, and it includes a lot of new features (like its tree vectorization) that a lot of people still consider "experimental." There are still a few Linux distributions still using GCC3 for that reason.