I remember my PalmIII fondly. And my Palm V that replaced it. And my Zire, that was the last one I had (although the V had some niceties the zire did not). Or maybe I'm just remembering them for what they were then, and not compared to iOS and Android. I bet if I booted the old PocketPC in my desk I'd go nuts (and not in a good way)(PocketPC 2003).
It's not that other compilers lack non-portable extensions. It's that a lot of open source software relies on a lot of these extensions forcing you to use gcc, rather then whatever compiler may be better suited for your platform. If I was trying to compile something that depended on C11 with an old compiler (say, MIPSPro that is C99 compliant) and the open source program wouldn't build, shame on me for using such an old platform. But when the README says C99, and is supposed to be portable, and doesn't build with MIPSPro, SunStudio, or XL C because it *require* GCC, then you are no more portable then you've created a lock-in, and are no better then had you used MSVC. It would have been more portable in Java or Flash.
As another poster said, if you are shipping a binary or proprietary code then go ahead and use whatever. But when you claim to have a 'portable' open source project that is supposed to work on any POSIX platform, then you should avoid such extensions. We have standards for a reason, and Microsoft doesn't have the monopoly on ignoring them.
I've seen fewer bugs in GCC than any other production compiler ever.
Anyway, it seems like GCC is implementing a very obscure compiler option incorrectly in some circumstances which causes a crash.
But of course this is cue for lamentations of how awful and braindead GCC is and so much drama.
End result, the GCC people will fix this bug in short order (what are GCC point releases for anyway), and distributers will probably have a patch package out for 4.9.0 before 4.9.1 ships (what are distributors for anyway?) and the world will keep turning and GCC will go back from being the buggy broken braindead piece of shit to yet again being the most solid production compiler in existence.
It's a little ironic that the he's so quick to attack the GCC people. The success of Linux is 100% built off the success of GCC. There have been no other credible compilers for Linux throughout the majority of its existence and without GCC being bulletproof, Linux would never have been solid.
Really? I hate GCC with a passion. Otherwise, we wouldn't have 'gccisms' that affect code portability to other POSIX platforms. GCC can go DIAF for all I care.
The main problem is that Linus did not take copyright assignments, so it's practially impossible now to relicense the Linux kernel or upgrade it to GPLv3.
Therefore, always remember to use "GPLv3 or later" when you release software. The "or later" is really important.
You make it sound like we care about GPLv3. Sorry, I'll stick to licenses like the BSD ones when I can.
They always were generally meaningless. Just like the Linux kernel versions. Just think about how much changed from Linux 2.0 to 2.6.39.
On Firefox - how long did we stay on FF 3.x? Does anyone really care what the version number says? Mozilla tends to make changes that can break backwards compatibility for plugins every other release, so why shouldn't they increment the major number?
Actually, a lot of us, including Linus Torvalds, do submit bug reports and patches to various groups (such as GNOME) that get promptly ignored or rejected because of politics.
And in my case, it's "I was using Linux happily until I tried other operating systems, and realized how horrible the GNU/Linux setup really is"
Not the story here. We are not moving to RHEL 7 because of systemD (and I don't make that decision, although I support avoiding systemD. It doesn't offer me anything but headache).
BSD/Linux X11 has breakneck feature obsolescence because nobody wants to actually standardize. I can run a 20 year old Windows app on Windows 8.1, but I can't run a 8 month old Linux application because it may depend on some obscure UI/UX feature that someone didn't like and quit maintaining.
Actually, I thought the whole impetus behind moving to Wayland was being able to delete legacy X11 features. Anything that uses X standards seems to compile and run on any X11 platform (XSun, Xorg, XSgi, XQuartz) without too much hassle (take GTK 2.x, for example. Or Qt4).
I know it never ran on IRIX - IRIX uses XSgi. The HP-UX box I currently have access to (which is horribly outdated) is running XFree86. AIX, however, does use X.Org. (BTW, IRIX wasn't EOL until the beginning of this year)
bash-4.2$/usr/X11R7/bin/Xorg -version
X Window System Version 7.1.1 Release Date: 12 May 2006 X Protocol Version 11, Revision 0, Release 7.1.1 Build Operating System: AIX IBM Current Operating System: AIX aix71 1 7 00036A2AD300 Build Date: 07 July 2006
Before reporting problems, check http://wiki.x.org/
to make sure that you have the latest version.
So, to me it sounds like they are moving to being Linux only. As someone who supports multiple UNIX flavors (AIX, Solaris, HP UX, IRIX, and FreeBSD), all of which are running some form of X (and several of them running X.Org), I am displeased with the trend towards all of the primarily Linux dependencies for a lot of software - GNOME 3, Wayland, and now features of X11.
The OP is complaining about something that most users probably don't see as an issue. I report bugs to Microsoft and VMware, so why shouldn't I report them back to an OSS project (actually, you probably report some issues back to Microsoft as well...the 'check for solution' button works much like ABRT does).
Certainly doesn't sound fun. Looks like I was stuck with something it didn't like in the MIPSPro files (/usr/include). Removing that from $C_INCLUDE_PATH got it to move on a bit further.
We've got progress - it's continuing to build now, thanks to some help from nekochan - apparently it really doesn't like MIPSPro, and despite being farther down in my $C_INCLUDE_FILES, the MIPSPro headers in/usr/include were causing issues. Changed $C_INCLUDE_FILES to remove/usr/include and it's continuing to build. I wonder what else will decide to build with that removed.
I remember my PalmIII fondly. And my Palm V that replaced it. And my Zire, that was the last one I had (although the V had some niceties the zire did not). Or maybe I'm just remembering them for what they were then, and not compared to iOS and Android. I bet if I booted the old PocketPC in my desk I'd go nuts (and not in a good way)(PocketPC 2003).
Actually what it translates to is I hate people writing non-portable code. What was rule 4 of the UNIX philosophy again?
GCC is much like IE6, in my opinion.
It's not that other compilers lack non-portable extensions. It's that a lot of open source software relies on a lot of these extensions forcing you to use gcc, rather then whatever compiler may be better suited for your platform. If I was trying to compile something that depended on C11 with an old compiler (say, MIPSPro that is C99 compliant) and the open source program wouldn't build, shame on me for using such an old platform. But when the README says C99, and is supposed to be portable, and doesn't build with MIPSPro, SunStudio, or XL C because it *require* GCC, then you are no more portable then you've created a lock-in, and are no better then had you used MSVC. It would have been more portable in Java or Flash.
As another poster said, if you are shipping a binary or proprietary code then go ahead and use whatever. But when you claim to have a 'portable' open source project that is supposed to work on any POSIX platform, then you should avoid such extensions. We have standards for a reason, and Microsoft doesn't have the monopoly on ignoring them.
I've seen fewer bugs in GCC than any other production compiler ever.
Anyway, it seems like GCC is implementing a very obscure compiler option incorrectly in some circumstances which causes a crash.
But of course this is cue for lamentations of how awful and braindead GCC is and so much drama.
End result, the GCC people will fix this bug in short order (what are GCC point releases for anyway), and distributers will probably have a patch package out for 4.9.0 before 4.9.1 ships (what are distributors for anyway?) and the world will keep turning and GCC will go back from being the buggy broken braindead piece of shit to yet again being the most solid production compiler in existence.
It's a little ironic that the he's so quick to attack the GCC people. The success of Linux is 100% built off the success of GCC. There have been no other credible compilers for Linux throughout the majority of its existence and without GCC being bulletproof, Linux would never have been solid.
Really? I hate GCC with a passion. Otherwise, we wouldn't have 'gccisms' that affect code portability to other POSIX platforms. GCC can go DIAF for all I care.
The main problem is that Linus did not take copyright assignments, so it's practially impossible now to relicense the Linux kernel or upgrade it to GPLv3.
Therefore, always remember to use "GPLv3 or later" when you release software. The "or later" is really important.
You make it sound like we care about GPLv3. Sorry, I'll stick to licenses like the BSD ones when I can.
Newsflash: Your Thinkpad with a Core Duo is obsolete. You're on the same ground as my 2006 MBP (MacBook Pro 1,1) - 32-bit and forgotten.
They always were generally meaningless. Just like the Linux kernel versions. Just think about how much changed from Linux 2.0 to 2.6.39.
On Firefox - how long did we stay on FF 3.x? Does anyone really care what the version number says? Mozilla tends to make changes that can break backwards compatibility for plugins every other release, so why shouldn't they increment the major number?
And does anyone actually care about or use these features?
Actually, a lot of us, including Linus Torvalds, do submit bug reports and patches to various groups (such as GNOME) that get promptly ignored or rejected because of politics.
And in my case, it's "I was using Linux happily until I tried other operating systems, and realized how horrible the GNU/Linux setup really is"
Not the story here. We are not moving to RHEL 7 because of systemD (and I don't make that decision, although I support avoiding systemD. It doesn't offer me anything but headache).
You could always run a non-GNU Linux setup if you don't like glibc. I'm all in favor of that!
Not really, because the systemd group is creating the issue.
BSD/Linux X11 has breakneck feature obsolescence because nobody wants to actually standardize. I can run a 20 year old Windows app on Windows 8.1, but I can't run a 8 month old Linux application because it may depend on some obscure UI/UX feature that someone didn't like and quit maintaining.
Actually, I thought the whole impetus behind moving to Wayland was being able to delete legacy X11 features. Anything that uses X standards seems to compile and run on any X11 platform (XSun, Xorg, XSgi, XQuartz) without too much hassle (take GTK 2.x, for example. Or Qt4).
I know it never ran on IRIX - IRIX uses XSgi. The HP-UX box I currently have access to (which is horribly outdated) is running XFree86. AIX, however, does use X.Org. (BTW, IRIX wasn't EOL until the beginning of this year)
bash-4.2$ /usr/X11R7/bin/Xorg -version
X Window System Version 7.1.1
Release Date: 12 May 2006
X Protocol Version 11, Revision 0, Release 7.1.1
Build Operating System: AIX IBM
Current Operating System: AIX aix71 1 7 00036A2AD300
Build Date: 07 July 2006
Before reporting problems, check http://wiki.x.org/
to make sure that you have the latest version.
So, to me it sounds like they are moving to being Linux only. As someone who supports multiple UNIX flavors (AIX, Solaris, HP UX, IRIX, and FreeBSD), all of which are running some form of X (and several of them running X.Org), I am displeased with the trend towards all of the primarily Linux dependencies for a lot of software - GNOME 3, Wayland, and now features of X11.
SPARC and POWER seem to be still kicking pretty hard for performance. Now, power consumption is another issue with those platforms, but I digress.
MIPS is still alive, they simply found a different market to target.
I believe that x86 emulation existed for IRIX on MIPS and Solaris on SPARC (and maybe more, just the two I know) via SoftPC.
I'm still using 3.5, in the form of Trinity Desktop.
The OP is complaining about something that most users probably don't see as an issue. I report bugs to Microsoft and VMware, so why shouldn't I report them back to an OSS project (actually, you probably report some issues back to Microsoft as well...the 'check for solution' button works much like ABRT does).
Personally I don't care about Wayland, and I think the KDE developers share my sentiment - it's more important to work across platforms.
No Pro Quality Linux applications? I guess Maya and Matlab are junk then.
Certainly doesn't sound fun. Looks like I was stuck with something it didn't like in the MIPSPro files (/usr/include). Removing that from $C_INCLUDE_PATH got it to move on a bit further.
The easy answer is I don't know how to use them, and they're required to build the Qt5 prereqs (pthreads-stubs)
We've got progress - it's continuing to build now, thanks to some help from nekochan - apparently it really doesn't like MIPSPro, and despite being farther down in my $C_INCLUDE_FILES, the MIPSPro headers in /usr/include were causing issues. Changed $C_INCLUDE_FILES to remove /usr/include and it's continuing to build. I wonder what else will decide to build with that removed.
Not in production, at least. IRIX happens to be my favourite UNIX.