Announcement

Collapse
No announcement yet.

Kernel Developers Still Discussing Raising Linux's Compiler Requirements

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by cb88 View Post

    Even the Linux kernel isn't all that fond of change... because change most often means bloat unless proven otherwise. The bleeding edge is bloody for a reason... there is nothing unfortunate about being able to use older gcc versions, while also supporting the checks in newer compilers it's plain old good common sense. I doubt anyone writing production code is willing to let random people just translate it into C11 without testing.

    Also, a lot of the features added in c11 don't work on all architectures eg atomics have been problematic in the past. What works in one revision of GCC may take several more revisions to get stable everywhere.
    What do you mean "bloat" in the context of a compiler?

    Comment


    • #12
      Originally posted by bug77 View Post

      What do you mean "bloat" in the context of a compiler?
      it's not about the compiler, its the ad hoc (and GCC exclusive for now) extensions the kernel demands to be compiled..

      like, IIRC, hinting the compiler on where to put in memory what portions of code or how to optimize / inline a code path .. but apart from those (which i think should be collected in a single standard) i honestly ask, what else does the kernel need?

      Comment


      • #13
        Would it not make more sense to instead describe a specification of standards and perhaps non-standard features that would be required? Or is there something specific for GCC 4.9 that makes this different?

        Comment


        • #14
          I think we should probably just replace all other distros with Arch Linux and derivatives. Stop using old software! If you're running servers, OK. If you're maintaining 1000+ desktops used by developers/other users in a large company, it makes sense to stay on old software for "stability". Most of us normal home users? Drag us kicking and screaming to newer versions. Want to use Firefox 52? You need to use Mesa 13 and above. Want to use the latest versions of GNOME and KDE? Well, update your damn X server, libdrm and mesa - no support for Mesa 9.x. Want to use some matrox G 400 with X? Well, no one else uses it, you do the work of updating xf86-video-* to work with the new Xorg ABI.

          Comment


          • #15
            Originally posted by alpha_one_x86 View Post
            The minimal should be gcc 4.9 and clang 3.9, or why not say C11 minimum?
            EDIT: and for me the arch maintener should update the compiler.
            C11 adds almost nothing from a language perspective, aside from _Generic (which can be powerful but not something you'd want in the kernel). There'd be little to no gain from requiring C11.

            Comment


            • #16
              Originally posted by silix View Post
              it's not about the compiler, its the ad hoc (and GCC exclusive for now) extensions the kernel demands to be compiled..

              like, IIRC, hinting the compiler on where to put in memory what portions of code or how to optimize / inline a code path .. but apart from those (which i think should be collected in a single standard) i honestly ask, what else does the kernel need?
              If we leave it at more meaningful compile errors/warnings and you still a big win right there.

              Comment


              • #17
                Long time until we'll be able to compile Linux with Clang/LLVM.

                Comment


                • #18
                  Originally posted by dungeon View Post
                  He, he, it is not question there when something is released - it is not driven by time, but what works and what does not
                  Dyslexia much? Because my point was that GCC 5 is out there and it should be more than mature enough to replace GCC 4 in anything except cases where developers are working on architectures that have been dropped.

                  Minumum means what does not break on most used architecture and recommended is what works for most architectures. So GCC 4.9 is version of compiler with least amount of issues so recommended, otherwise use whatever works for you Lucky Luke you know
                  If we're going based on the "least number of issues" than why not do the opposite and roll back? Who needs GCC when you've got the much more tried and tested GCC 3 and 2 to use!

                  Seriously thou, I can understand them not going for the latest and greatest due to various unresolved issues in new versions, but there's a limit to how far back you should go.

                  Comment


                  • #19
                    RHEL 7 is using gcc 4.8.5 so I doubt they'd increase the required GCC version above that, I'm not sure what RHEL 6 is using but I think it's still supported

                    Comment


                    • #20
                      Originally posted by computerquip View Post
                      C11 adds almost nothing from a language perspective, aside from _Generic (which can be powerful but not something you'd want in the kernel). There'd be little to no gain from requiring C11.
                      Mixing code and variable declarations, that should be enough to justify the efort.

                      Comment

                      Working...
                      X