Re: [Audacity-devel] Can we upgrade our required gcc version? Travis is using a five year old versi
A free multi-track audio editor and recorder
Brought to you by:
aosiniao
From: Paul L. <pau...@gm...> - 2016-02-07 20:59:03
|
I'd like to get us using C++11 language and library features but I am not the Unix and gcc expert here. Let's see: when did gcc deprecate the "std=c++0x" option and start calling it "std=c++11" ? I Googled online documentation for some versions. 4.6.4 (last 4.6) says: "The ISO C++ committee is working on a new ISO C++ standard, dubbed C++0x, that is intended to be published by 2009. C++0x contains several changes to the C++ language, some of which have been implemented in an experimental C++0x mode in GCC." 4.7.0 says: "A fourth version of the C standard, known as C11, was published in 2011 as ISO/IEC 9899:2011. GCC has limited incomplete support for parts of this standard, enabled with -std=c11 or -std=iso9899:2011. (While in development, drafts of this standard version were referred to as C1X.)" 4.8.0 says the same. 4.9.0 says: "A fourth version of the C standard, known as C11, was published in 2011 as ISO/IEC 9899:2011. GCC has substantially complete support for this standard, enabled with -std=c11 or -std=iso9899:2011. (While in development, drafts of this standard version were referred to as C1X.) " 4.9.3 says the same. So it seems 4.7 was the earliest that was good enough to call it -std=c++11 despite some incompletenesses. Is that the conservative choice then? PRL On Sun, Feb 7, 2016 at 12:18 PM, Richard Ash <ri...@au...> wrote: > On Fri, 5 Feb 2016 13:01:42 -0800 (PST) > Bill Unruh <un...@ph...> wrote: > > > Debian Stable, which tends to be slow to update, has gcc 4.9.2, > > > which gives it 'experimental' C++11 support. > > > https://gcc.gnu.org/projects/cxx0x.html > > > > Mageia 5 which is the latest version of a distro which tends to be > > toward the "bleeding edge" has gcc 4.9.2. > 4.8.x seems to be a good minimum version: > * Ubuntu 14.04 (latest Long Term support release) comes with gcc 4.8.2, > so Mint inherits the same > * OpenSUSE Leap (as opposed to Tumbleweed) is at GCC 4.8. > * Fedora 19 shipped GCC 4.8 - this was the base for Centos 7 - and > Fedora are now on version 23. > * Gentoo has 4.9 stable on all architectures except Sparc (which is > pretty niche these days) > > I suspect GCC 5 will take a while to be widespread, because it breaks > C++ ABI (meaning rebuilding ever C++ package on the system), and is > reported to cause problems compiling quite a few packages still. > > The other question is Mac OS. Someone with a Mac development system > will have to say what GCC version we get there, because it probably > won't be trivial to upgrade that. The latest Xcode switches from GCC to > Clang, but I don't think we are using that yet. > > > Mageia 3 which is now about > > 2 years old is 4.7.2. > > Redhat which has a 7 year support -- the opensource version, CentOS > > 6.7 has gcc 4.4.7. > > So I guess it depends on how much you want to support older, but > > widely used versions. > I don't think support for either of these is particularly relevant. > RedHat / CentOS exists on a "time-warp" basis - whatever was current > when the warp was frozen, is what continues for the whole support life. > So the same should apply to Audacity, users who opt into the time warp > get to keep whatever old version of Audacity was current at that time. > The maintenance impact of not doing so is high, because the time warp > will also mean old versions of all the libraries we use, which causes > complexity we can't support. > > One final thing - we should have a configure test for whatever compiler > features we use, so that if someone tries to compile with too old a > compiler, they will get an error at that stage. This can then test the > various possible compiler flags to find out which one a given compiler > needs to build our code. > > Richard > > > ------------------------------------------------------------------------------ > Site24x7 APM Insight: Get Deep Visibility into Application Performance > APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > Monitor end-to-end web transactions and take corrective actions now > Troubleshoot faster and improve end-user experience. Signup Now! > http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140 > _______________________________________________ > audacity-devel mailing list > aud...@li... > https://lists.sourceforge.net/lists/listinfo/audacity-devel > |