Noob attack time [continued] : Intel Compilers under Slackware :-)
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Noob attack time [continued] : Intel Compilers under Slackware :-)
Hi Forum
As I wrote in previous posts, my workhorse apps are not commercia, they are compiled from source, abd they make intensive use of CPU ( some sort of numeric binary aerobics, for hours though... )
Therefore I have three questions to make :
#1) is the GNU toolchain installed by default with Slackware 13 64 ? ( I opted to install everything at install options ...)
#2) Do Slackware supports Fortran compilers and linkers, like F77, g77, gfortran, or must they be installed as third party apps...?
#3) Like most command line geeks around know, since gcc 4.x.x the support for f77/g77 has been discontinued by GNU, in favor of a substitute with full ( oh reaally... ??? Then why does some legacy code will not compile... ??? ) backward compatibility with legacy code ( Most scientific/math libraries from Harwell or Nag... ) called gfortran.
Being a resourceful person, i managed to compile my legacy code with the Development toochain of Intel ( Absoft is way too expensive... ), this "hack" works under *.deb and *.rpm based distros, the *buntus/Debians RHELs/CentOS/Fedoras...
What I do not know is if it works under Slack... They are binaries packed in rpm, that can be converted with alien...
The install script is in charge of creating directories, environment scripts, symlinks, but the core packages are rpm.
Can this be installed in Slackware... ?
... I mean typing ./install.sh and alien does its job without much of a fuss of having to hack the install.sh file...
In multi processor architectures, the speedup can be remarkable, comparing to gcc compiled binaries...
It is not a good idea to make references to other posts/threads without linking them. Most readers are not going to remember what you are referring to.
Just about any distro includes the GNU utilities (keep in mind that OpenSource predates Linux)
It's GCC that gives you Fortran, etc.---not Slackware.
Quote:
#3) Like most command line geeks around know, since gcc 4.x.x the support for f77/g77 has been discontinued by GNU, in favor of a substitute with full ( oh reaally... ??? Then why does some legacy code will not compile... ??? ) backward compatibility with legacy code ( Most scientific/math libraries from Harwell or Nag... ) called gfortran.
My point here is this : I use several applications that make extensive use of Fortran 77 ( legacy code ), like Dakota, Flash, Fluka, just to name a few...
Will they compile under the fortran of gcc shipped in Slackware...? Because i can tell you, they will NOT COMPILE ( I challenge you to verify this ... :-) ) under the most recent versions of gcc ( those that have substituted the F77 compiler and the g77 linker of cgg 3.x by the gfortran of the gcc 4.x version ) ; So although compiling under Debian 4.x or Ubuntu 8.04 LTS, they will fail to do so under Lenny... which gcc ships with gfortran ...
It is gcc that gives me fortran, not slackware... allright, but some gcc will not give me the fortran that i want... :-)
Some code aheres to the Fortran 77 standard, this will compile with g77/f77 but NOT with gfortran, likewise Fortran 95 code will not compile with f77/g77... and in my opinion, it is not a reasonable option to delve into maybe hundreds of thousands of lines of a code which structure i do not know to change the syntax form a standard to another... ( my opinion here... )
So restating my question,
Can I change the gcc of Slackware, ( in case i need to do so ) installing a prevoius version without fearing major incompatibilities... ?
Can I change the gcc of Slackware, ( in case i need to do so ) installing a previous version without fearing major incompatibilities... ?
Not easily AFAIK, but I must admit I didn't try.
What you could do in case you want to try a gcc 3.x.x is install Slackware 12.0 which ships with gcc 3.4.6, possibly in a virtual machine ; for instance Virtual Box is easy to install in Slackware 13.
gcc-gfortran: gcc-gfortran (Fortran support for GCC)
gcc-gfortran:
gcc-gfortran: This package contains those parts of the compiler collection
gcc-gfortran: needed to compile Fortran code. The base gcc package is also
gcc-gfortran: required. The GNU Fortran compiler is able to compile nearly all
gcc-gfortran: standard-compliant Fortran 95, Fortran 90, and Fortran 77 programs,
gcc-gfortran: including a number of standard and non-standard extensions, and can
gcc-gfortran: be used on real-world programs. In particular, the supported
gcc-gfortran: extensions include OpenMP, Cray-style pointers, and several Fortran
gcc-gfortran: 2003 features such as enumeration, stream I/O, and some of the
gcc-gfortran: enhancements to allocatable array support from TR 15581.
So my best bet is to first try this one.
Last edited by Didier Spaier; 10-21-2009 at 09:33 AM.
The version of gcc in Slackware 13, 12 etc. can be found on distrowatch; Slackware 13 has gcc 4.3.3, 12.1 has 4.2.3. I think if you replaced gcc with the old version you'd be in for a world of hurt.
I don't know about the Intel compiler: install it and let us know if it works
I presume you tried the -std=legacy or some of the other dialect options and/or -ff2c with gfortran without success. I don't have any other suggestions. I agree that it is (1) frustrating that the support for 77 is buggy, (2) that commercial compilers like Absoft have always been so da*ed expensive.
Or the OP could install in VM the OS that worked for the FORTRAN.
The OP is not very versed and seems confused about the current state of OpenSource or GNU.
Quote:
Will they compile under the fortran of gcc shipped in Slackware...? Because i can tell you, they will NOT COMPILE ( I challenge you to verify this ... :-) ) under the most recent versions of gcc ( those that have substituted the F77 compiler and the g77 linker of cgg 3.x by the gfortran of the gcc 4.x version ) ; So although compiling under Debian 4.x or Ubuntu 8.04 LTS, they will fail to do so under Lenny... which gcc ships with gfortran ...
When the OP knows the compiler doesn't provide the means to his/her end but challenges someone to prove otherwise bothers me. To banter on will do no one any good.
The fair way would be to use a 'VM' of choice then install a client system that works for the compiler that produces the desired results.
The fair way would be to use a 'VM' of choice then install a client system that works for the compiler that produces the desired results
The OP wants to use his workhorse apps in his main OS at full speed, not be forced to run them in a VM like retarded Windows apps, so I respectfully disagree.
Let me thank you for your suggestion in using the VM, that had not occured to me before...
#1) Being a newbie in Slackware, I ADMIT, that i am not very versed, and having exhausted any possible ( to my knowledge ... ) means to solve a problem and having failed to do so in other distros, I am ASKING ( like in having a doubt, and implicitly admitting not being very versed ... ) how to do so in Slackware. :-)
#2)I do not KNOW if the compiler provides the means to acheive my goals because of what I explained in #1, all i can state is that to the extent of my attempts it failed to do so so, admitting that my knowledge in this area in unsatisfactory to acheive my goals, i challenged not in a tone of arrogance or banter, but merely to ask someone to prove to me that I am wrong about my statement, and my findings about gcc's ability to do the task i want...
#3) I did not mean to be arrogant or unpolite to anyone in this forum, if I was interpreted this way, I feel sorry about that.
Alex
PS: May I ask the meaning of OP...? Please explain...
The OP wants to use his workhorse apps in his main OS at full speed, not be forced to run them in a VM like retarded Windows apps, so I respectfully disagree.
Now for a ( vaguely related ) issue about speed...
I have searched in the web, for Phoronix benchmarks comparing Slackware with other distros, and found nothing...
... I may say that the boot time of Slackware is Light Years faster than the *buntus/Debians or the RHELs...
I know... it depends on the services one enables at boot time in the runlevels if i want it to be faster i only have to edit the /etc/rc.d files... but I am talking about a standard install... Slackware is simply faster...
Do you happen to know of any benchmark using Slacware comparing to other Distros/OSes..?
Benchmarks for boot up, or for program run time? I haven't run any recently, but I think they only have validity if you run YOUR code using several different scenarios.
Actually, I wouldn't think program execution would matter on the distro once the kernel and necessary modules and services are installed. Needless to say, if you can, you'd be better off running in init 3 (CLI only), the default in Slackware, rather than in init 4 or from a gui. In fact, I suspect you'd be even a little faster running in init 1 and getting rid of every single other process running that you can.
Lest any of you think that it's silly to run Fortran code in init 1, I quote from one of my favorite books 'Numerical Recipes in C' page 21: "One of the cultural barriers that separates computer scientists from "regular" scientists and engineers is a differing point of view on whether a 30% or 50% loss of speed is worth worrying about."
Last edited by mostlyharmless; 10-21-2009 at 10:20 AM.
Comparing several distros, for instance, ext4 of Slackware 13 is a "plus" in terms of File I/O operations comparing to other filesystems...
So far I found nothing on Slackware on Phoronix's site... Are they afraid of the overwhelming speed advantage ( applications seem to run snappier, pstree seems less cluttered ... ) of Slackware ? :-D
To my subjective feel, it just seems faster...
I wonder when will phoronix run a benhmark over Slack...?
You are absolutely right about that difference in opinion among computer scientists and Engineers in general... :-)
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.