Announcement

Collapse
No announcement yet.

OpenMandriva Is Finding Great Success In Their Switch To Using LLVM's Clang Compiler

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

  • #51
    Originally posted by cybertraveler View Post

    I don't see why you are creating confusion.

    GNU started a project to make a "fully free" OS. They were successful after adding the Linux kernel to it. Since that time many people built upon, swapped out parts and added to GNU/Linux. I'm not gonna call a system GNU/KDE/X/Eclipse/Steam/Linux. It's a GNU/Linux distro with stuff changed. I don't even care that GNU started it other than the fact I appreciate they did so. I don't care what bits were added or changed. The system needs a name & the system has a name. That name is GNU/Linux.

    It's not Linux. Linux is a kernel that is also used in non-GNU/Linux operating systems.

    If you're here on this forum you should know all this. So why are you generating confusion? There is no need.

    Noobs call it "Linux". They do not know the truth. They only know a word bounded around and popularised by other fools. They live in confusion. They may not even be aware that Android contains the Linux kernel, yet is not GNU/Linux and makes no attempt to be GNU/Linux. If they are aware of some vague relationship between Android and distros like Ubuntu, Fedora, Arch and Debian, they may not understand what that relationship is. Those same noobs may be unaware that GNU is also used with other kernels. If they are aware of that, they may struggling to understand this concept as in their minds they would be trying to formulate a concept of "Linux without Linux".

    If some day Fedora is built only with CLANG & ships only with KDE, systemd and almost no GNU software, then perhaps you might like to simply call it Fedora and not called it a GNU/Linux distribution. Until that time comes, there is no need for further discussion or debate. The world is complicated enough without adding unnecessary complexity.

    Please do not be foolish and do not spread confusion.
    Where is the confusion? Everyone knows Linux is a kernel. They're referring to a common set of functionality that's often added on top of it. Time and time again, people can say "why not just call it every package on your system and be done with it". I've never seen that point contested, only ignored. Even in your very own post, you preemptively brought that argument up, then ignored it by saying "well it's just confusing so you shouldn't do it, you bad bad man." If someone can consistently bring up a counter point to your argument then your argument, regardless of intention and how correct that intent is, is in itself incorrect, or rather just structured very poorly. It's a basic point of idiomatic English, you're telling people that natural speech is wrong and they should be willing themselves into an unclear and intuitive naming scheme. That sounds a lot more like "unnecessary complexity" to me. What's idiomatic to people is calling a system Linux when it contains the Linux kernel and a standard C library. You can't argue against what people already think is idiomatic, you're outright saying the world is incorrect, I don't care if it actually is right or not. You need to sympathize with people to construct an argument they'll listen to. Calling me a "noob" and a "fool" will make me ignore you and your argument outright, because it's a sign to me that you can't empathize with me and thusly you're not even aware of how to properly construct an argument that relates to my situation.

    People disregard your argument of "It's not Linux it's GNU with Linux added" because it feels like you're trying to take away Linux from them. They care about Linux more than GNU, they can replace the GNU parts but they can't or don't want to replace Linux. You saying "No, it's GNU, end of story" has a similar tone to them as "You live under my roof, you live by my rules". Linux users are often defiant and rebels, they hate being told what to do or what is or isn't right. Your lack of communication skills is not helping that. Every time you try to try to push the horse from behind, it's desire to buck only increases. You offer no argument to the naming scheme other than "you have to do it by law or else". No.

    If a specific distribution calls itself Linux, then I say it's Linux. If they call themselves GNU/Linux, then I use that. I use Ubuntu Linux while you might use Purism GNU/Linux. I respect the naming scheme of the project as I would like to be respected for my decisions. I don't try to enforce my own naming scheme on people or projects who have done more work than I did. If a project named itself Systemd/GNU/Linux I'd call it that too, no matter how stupid that naming scheme is. And going along with your argument, a lot of distros should be called that, since Systemd is such a critical part of the system now, a lot of packages won't even work without it anymore. After all, don't want to "confuse" people using Void thinking they can run Systemd-depending packages. But I don't have to concern myself with that silly naming scheme because I respect the naming schemes of the projects that utilize Linux and whatever packages they choose to use on top of it, whether they use Systemd, or glibc, or not. Not saying you have to, in fact I'm not saying you have to do anything, except you have to stop telling me what I have to do, which I consider pretty reasonable. Feel free to call it FreeBSD/kFreeBSD, after all, don't want to confuse people who might be using kFreeBSD with glibc installed. I'm not sure why GNU stuff gets to magically append it's name to any project while others can't, according to your logic, but, it's your life, do what you want, I'm not going to call you a "fool" for doing so, because I know you have your own reasoning for doing things. You and your opinions are not any more invalid than mine, until the second you insist mine are invalid.

    Comment


    • #52
      Originally posted by berolinux View Post

      In an ideal world, we'd have hundreds of thousands of contributors, so if someone building package A and runs into a compiler bug while doing that, he can just tell a compiler guy what happened, and will get an instant fix so he can continue his work on A.

      In the real world, especially in a small all-volunteer project, someone building package A and running into a compiler bug will usually try to generate a small reproducer, report the bug (to the upstream project, which may not be super-interested in package A and may have different priorities), and if there's no response for a while look at the compiler code himself to figure out what's going wrong, and hopefully attach a patch to the bug report.

      A really good package maintainer isn't scared of fixing up a library and/or tool [including compiler] used by his package if necessary (of course with the help of other contributors if needed).
      I mean, I get that but that's a very rare case. Certainly not reason enough to change an entire package base in order to not use gcc, right?

      Comment


      • #53
        Originally posted by Ironmask View Post
        I'm not sure why you people seem so invested in programs or having unquestionable control over them, but for people in the business world who just want to make a tool, use a tool and get stuff done, it's not like fucking someone's wife, it's a business decision. I don't have any problem with publishing something under BSD/MIT and neither do major corporations like IBM and Microsoft. Go ahead and use my code, contribute if you want, or don't, I don't care, I'm not running a GNU/Cult.

        Personally I'm just eager for a Linux without anything GNU so people will stop harassing strangers on how they should refer to it. Was never one for politics, that's why I avoid twitter as well. I don't like being harassed for simply what I'm thinking.
        It's a question of reverse-morality. The very same GNU die-hards would have no compunctions on "stealing" (as they are putting it) the non-GPL code, so they naturally assume any other person would to the same. It does not matter that devs licensing the software chose permissive license knowingly. They just cannot really comprehend anyone having different set of base values than them. Mommy teached them"stealing is baaad", so in order to get rid of morally "questionable" things, they hate them with a burning passion.

        Comment


        • #54
          Originally posted by berolinux View Post
          Purely from a warning/error message perspective, that makes sense -- but it also doubles compile times even when doing a simple rebuild without any code changes, so we aren't doing that. We do build important stuff both compilers once in a while to see if anything suspicious comes up.
          If compiling a single file with two compilers the elapsed time is max(gcc, clang), not gcc+clang. This is because the two can run in parallel on a multi-core CPU.

          For simple rebuilds without any code changes: I strongly recommend ccache.

          With ccache, single-threaded CPU performance is gaining on importance.

          Comment


          • #55
            Originally posted by atomsymbol View Post
            If compiling a single file with two compilers the elapsed time is max(gcc, clang), not gcc+clang. This is because the two can run in parallel on a multi-core CPU.
            Unless of course all cores are already at the limit because stuff is built with "make -j$(getconf _NPROCESSORS_ONLN)" or the likes -- which happens to be done in pretty much all of our packages. On top of that, our build machines usually build several packages at the same time already.

            The box I'm on right now is an 8-core (16 threads) Ryzen 2700x. All cores are at 100% load, Load average 46.64, 37.33, 22.47. Compiling things twice would certainly slow things down (and ccache wouldn't help a lot unless there was a giant disk for caching stuff -- it's not the same package being built all the time).

            Comment


            • #56
              Originally posted by berolinux View Post
              The box I'm on right now is an 8-core (16 threads) Ryzen 2700x. All cores are at 100% load, Load average 46.64, 37.33, 22.47. Compiling things twice would certainly slow things down (and ccache wouldn't help a lot unless there was a giant disk for caching stuff -- it's not the same package being built all the time).
              I agree. The cache size should be at least several gigabytes. I am using several caches of size 2-4 GiB.

              The cache hit ratio for Gentoo package builds is currently at 31% on my machine. The hit ratio for $HOME/.ccache is 90%. The hit ratio depends on which build system the developer is using.

              A long term hit ratio of X% means that Load average on your machine could drop by up to X%.

              The age of some files in the cache can be several months.

              Enabling ccache unconditionally for all builds has a small overhead in the worst case scenario.

              There is CCACHE_COMPRESS env variable which enables compression. There is also CCACHE_COMPRESSLEVEL. Compression can be enabled in ccache.conf as well.

              Comment


              • #57
                Originally posted by atomsymbol View Post

                I agree. The cache size should be at least several gigabytes. I am using several caches of size 2-4 GiB.

                The cache hit ratio for Gentoo package builds is currently at 31% on my machine. The hit ratio for $HOME/.ccache is 90%. The hit ratio depends on which build system the developer is using.

                A long term hit ratio of X% means that Load average on your machine could drop by up to X%.

                The age of some files in the cache can be several months.

                Enabling ccache unconditionally for all builds has a small overhead in the worst case scenario.

                There is CCACHE_COMPRESS env variable which enables compression. There is also CCACHE_COMPRESSLEVEL. Compression can be enabled in ccache.conf as well.
                Thanks. I learned something of value today.

                Comment


                • #58
                  Read this free book to put the GPL vs permissive debate to rest https://mises.org/library/against-in...ual-property-0

                  Comment


                  • #59
                    Originally posted by mastermind View Post
                    Read this free book to put the GPL vs permissive debate to rest https://mises.org/library/against-in...ual-property-0
                    I used to be a huge fan of the GPL. It was reading things like the above that changed my mind about it. The principles outlined in that book and others like it are sound. Copyright and Patents are anti-property. Their enforcement involves actual property rights violations.

                    It's somewhat ironic that Stallman is pro "Free Software" and not fond of "Open Source" on the basis that Free Software is supposedly about freedom and the principles whereas Open Source is more about pragmatism. I later discovered it's actually the other way around.

                    However, I don't see the GPL as the work of the devil. I think Stallman & Co have done great things & with good intentions. His work has lifted us up. I think we just need to keep climbing higher.

                    Comment

                    Working...
                    X