Skip to content

problem building R packages on RHEL 4 Linux with Intel compilers

11 messages · Esmail Bonakdarian, Mark Kimpel, Simon Urbanek +3 more

#
Mark Kimpel wrote:
Are you running this as root? Or do you have the right
privileges for the install?

The "cannot create executables" looks like a permission problem

Esmail
#
On May 29, 2008, at 5:01 PM, Mark Kimpel wrote:

            
This has nothing to do with the executable bit and/or permissions -  
this is about the compiler rejecting your flags. Have a look in  
config.log that's where you'll find out what the compiler didn't like  
(and the error clearly tells you that ;)).

Cheers,
Simon
#
On May 29, 2008, at 5:45 PM, Mark Kimpel wrote:

            
^^ there you go: "-fast" is not supported by your gcc and "-wd188" is  
ignored (whatever you're trying achieve with that) ... it's there in  
plain english ;).

Cheers,
Simon
#
On May 29, 2008, at 6:11 PM, Mark Kimpel wrote:

            
You'll get that *if* the package is not broken and you compiled R with  
icc. However, many packages don't use autoconf properly which results  
in broken configure scripts (the configure will use a different  
compiler and flags than R, effectively making it useless).

So, in order to furter help you, you have to be more specific (which  
package we're talking about for example)...

Cheers,
Simon
#

        
SU> On May 29, 2008, at 6:11 PM, Mark Kimpel wrote:
>> Esmail and Simon, I would direct you to the very first sentence of my
    >> original post, "I would like to build R and packages with the Intel  
    >> 10.1
    >> compilers in RHEL4." I DO NOT want to build with gcc, that is the  
    >> very point
    >> of this thread. Does anyone have an answer to my original question?  
    >> I need
    >> to know what flags to put with configure so that packages will be  
    >> compiled
    >> with Intel 10.1 when I do "install.packages" from within R.
    >> 

    SU> You'll get that *if* the package is not broken and you compiled R with  
    SU> icc.

But if I read Mark's very first post correctly,
he tried to build R with icc (and ifort, and their libraries)
that he didn't succeed  already there,
but rather gave the ./configure .... error message he'd
reported.

Is that correct Mark?
{Not that I could really help further here with the configure problem}

Martin Maechler, ETH Zurich

    SU>  However, many packages don't use autoconf properly which results  
    SU> in broken configure scripts (the configure will use a different  
    SU> compiler and flags than R, effectively making it useless).

    SU> So, in order to furter help you, you have to be more specific (which  
    SU> package we're talking about for example)...


    SU> Cheers,
    SU> Simon


    >> 
    >> On Thu, May 29, 2008 at 5:54 PM, Simon Urbanek <simon.urbanek at r-project.org 
    >> >
>> wrote:
>> 
    >>>
>>> On May 29, 2008, at 5:45 PM, Mark Kimpel wrote:
>>> 
    >>> Simon, I scanned the config.log, which is too voluminous to insert  
    >>> below,
    >>>> but it seems that gcc is still being looked for as the compiler.  
    >>>> See the
    >>>> lines from config.log below. Mark
    >>>> 
    >>>> Thread model: posix
    >>>> gcc version 3.4.6 20060404 (Red Hat 3.4.6-9)
    >>>> configure:4824: $? = 0
    >>>> configure:4831: gcc -V >&5
    >>>> gcc: `-V' option must have argument
    >>>> configure:4834: $? = 1
    >>>> configure:4857: checking for C compiler default output file name
    >>>> configure:4884: gcc -fast -unroll -wd188 -I/usr/local/include -L -L
    >>>> -L/usr/local/lib64 conftest.c  >&5
    >>>> gcc: unrecognized option `-wd188'
    >>>> cc1: error: unrecognized command line option "-fast"
    >>>> 
    >>> 
    >>> ^^ there you go: "-fast" is not supported by your gcc and "-wd188" is
    >>> ignored (whatever you're trying achieve with that) ... it's there  
    >>> in plain
    >>> english ;).
    >>> 
    >>> Cheers,
    >>> Simon
    >>> 
    >>> 
    >>> 
    >>> 
    >>>> configure:4887: $? = 1
    >>>> configure:4925: result:
    >>>> configure: failed program was:
    >>>> | /* confdefs.h.  */
    >>>> 
    >>>> # Then the tail end of config.log
    >>>> 
    >>>> r_cc_lo_rules_frag=''
    >>>> r_cc_rules_frag=''
    >>>> r_cxx_rules_frag=''
    >>>> r_objc_rules_frag=''
    >>>> 
    >>>> ## ----------- ##
    >>>> ## confdefs.h. ##
    >>>> ## ----------- ##
    >>>> 
    >>>> #define PACKAGE_NAME "R"
    >>>> #define PACKAGE_TARNAME "R"
    >>>> #define PACKAGE_VERSION "2.7.0"
    >>>> #define PACKAGE_STRING "R 2.7.0"
    >>>> #define PACKAGE_BUGREPORT "r-bugs at R-project.org"
    >>>> #define PACKAGE "R"
    >>>> #define VERSION "2.7.0"
    >>>> #define R_PLATFORM "x86_64-unknown-linux-gnu"
    >>>> #define R_CPU "x86_64"
    >>>> #define R_VENDOR "unknown"
    >>>> #define R_OS "linux-gnu"
    >>>> #define Unix 1
    >>>> #define R_ARCH ""
    >>>> 
    >>>> configure: exit 77
    >>>> 
    >>>> 
    >>>> On Thu, May 29, 2008 at 5:35 PM, Simon Urbanek <
>>>> simon.urbanek at r-project.org> wrote:
>>>>
>>>> On May 29, 2008, at 5:01 PM, Mark Kimpel wrote:
>>>> 
    >>>> I am installing within my home folder, see the ./configure  
    >>>> options. I've
    >>>> never had a permission problem before and, like I said, if I don't  
    >>>> put all
    >>>> the Intel-specific flags in the ./configure, everything works fine.
    >>>> 
    >>>> 
    >>>> This has nothing to do with the executable bit and/or permissions  
    >>>> - this
    >>>> is about the compiler rejecting your flags. Have a look in  
    >>>> config.log that's
    >>>> where you'll find out what the compiler didn't like (and the error  
    >>>> clearly
    >>>> tells you that ;)).
    >>>> 
    >>>> Cheers,
    >>>> Simon
    >>>> 
    >>>> 
    >>>> On Thu, May 29, 2008 at 4:41 PM, Esmail Bonakdarian <esmail.js at gmail.com 
    >>>> >
>>>> wrote:
>>>>
>>>> Mark Kimpel wrote:
>>>> 
    >>>> 
    >>>> checking for gcc... gcc
    >>>> checking for C compiler default output file name...
    >>>> configure: error: C compiler cannot create executables
    >>>> See `config.log' for more details.
    >>>> 
    >>>> 
    >>>> Are you running this as root? Or do you have the right
    >>>> privileges for the install?
    >>>> 
    >>>> The "cannot create executables" looks like a permission problem
    >>>> 
    >>>> Esmail
    >>>> 
    >>>> 
    >>>> 
    >>>> 
    >>>> --
    >>>> Mark W. Kimpel MD ** Neuroinformatics ** Dept. of Psychiatry
    >>>> Indiana University School of Medicine
    >>>> 
    >>>> 15032 Hunter Court, Westfield, IN 46074
    >>>> 
    >>>> (317) 490-5129 Work, & Mobile & VoiceMail
    >>>> (317) 663-0513 Home (no voice mail please)
    >>>> 
    >>>> ******************************************************************
    >>>> 
    >>>> [[alternative HTML version deleted]]
    >>>> 
    >>>> ______________________________________________
    >>>> R-devel at r-project.org mailing list
    >>>> https://stat.ethz.ch/mailman/listinfo/r-devel
    >>>> 
    >>>> 
    >>>> 
    >>>> 
    >>>> 
    >>>> 
    >>>> --
    >>>> Mark W. Kimpel MD ** Neuroinformatics ** Dept. of Psychiatry
    >>>> Indiana University School of Medicine
    >>>> 
    >>>> 15032 Hunter Court, Westfield, IN 46074
    >>>> 
    >>>> (317) 490-5129 Work, & Mobile & VoiceMail
    >>>> (317) 663-0513 Home (no voice mail please)
    >>>> 
    >>>> ******************************************************************
    >>>> 
    >>> 
    >>> 
    >> 
    >> 
    >> -- 
    >> Mark W. Kimpel MD ** Neuroinformatics ** Dept. of Psychiatry
    >> Indiana University School of Medicine
    >> 
    >> 15032 Hunter Court, Westfield, IN 46074
    >> 
    >> (317) 490-5129 Work, & Mobile & VoiceMail
    >> (317) 663-0513 Home (no voice mail please)
    >> 
    >> ******************************************************************
    >> 
    >> [[alternative HTML version deleted]]
    >> 
    >> ______________________________________________
    >> R-devel at r-project.org mailing list
    >> https://stat.ethz.ch/mailman/listinfo/r-devel
    >> 
    >> 

    SU> ______________________________________________
    SU> R-devel at r-project.org mailing list
    SU> https://stat.ethz.ch/mailman/listinfo/r-devel
#
On Fri, 30 May 2008, Martin Maechler wrote:
[Adding Mark Kimpel back to the recipients]
That was my reading of the text but not of the subject line.

If so, we need access to config.log to see the problem.  Please put it on 
a website somewhere.

It would also help to know why Mark Kimpel wants to do this -- people have 
not found the Intel compilers particularly effective and there are quite a 
few reports of wrong answers using them.  I suspect -fast is not going to 
work, as on our Intel 9 compilers it forces static linking.

A very useful general strategy is to start with a minimal set (often none) 
of extra flags and build up to the optimization level required.  So please 
try that before supplying config.log.

  
    
#
"Mark Kimpel" <mwkimpel at gmail.com> writes:
We are successfully building R and packages with the Intel 10.1
compilers on RHEL4 (except a few packages, which will not compile with
10.1, but with 9.1).  We also use the Intel MKL blas/lapack libraries.

This is out procedure for building R:

export CC="icc"
export CFLAGS="-O3 -ip -wd188"
export F77="ifort"
export FFLAGS="-O3 -ip"
export CXX="icpc"
export CXXFLAGS="-O3 -ip"
export FC="ifort"
export FCFLAGS="-O3 -ip -mp"

./configure --prefix="/site/VERSIONS/R-2.7.0" \
  --with-blas="-L/site/intel/cmkl/8.1/lib/em64t -lmkl -lvml -lguide -lpthread" \
  --with-lapack="-L/site/intel/cmkl/8.1/lib/em64t -lmkl_lapack64 -lmkl" \
  --enable-R-shlib

make -j 4

make -j 4 check # NB! "-j 4" won't work on all versions of R

make install

Packages are installed with install.packages() in R.  The procedure is
loosely based on the Intel/MKL examples given in the R Installation and
Administration Manual.

The only thing we haven't figured out how to solve, is how to also
generate the libRblas.so and libRlapack.so; --enable-BLAS-shlib seems to
interfer with the --with-lapack, such that the extarnal library will not
be used.