Problem : /bin/sh: line 1: icc: command not found :Error “make” for a Installing a Perl Module
Hello one of my application that I have installed requires teh XML::Xerces module .I downloaded the module form the cpan org
http://cpan.uwinnipeg.ca/module/XML%3A%3AXerces
and followed the instructions.According to which I needed to have the binary Xerces-C for that to work.
Following the instructions I set the envorment variaraible pointing to the root directory
export XERCESCROOT=/permanant/xerces/
I am using RedHatLinux 9
Then I installed the XML::Xerces module
and tried
I did the Makefile.pl : Which seemed to work fne
[root@name XML-Xerces-2.5.0-0]# perl Makefile.PL
Using XERCES_LIB = /temporary/xerces-c_2_5_0-redhat_72-icc_71//lib
Using XERCES_INCLUDE = /temporary/xerces-c_2_5_0-redhat_72-icc_71//include
using config file: /temporary/xerces-c_2_5_0-redhat_72-icc_71//src/xercesc/confi
g.status
Found CXX = icc
Found CXXFLAGS = -w -DXML_USE_NATIVE_TRANSCODER -DXML_USE_INMEM_MESSAGELOADER –
DXML_USE_PTHREADS -DXML_USE_NETACCESSOR_SOCKET
Found LDFLAGS =
Using Xerces-C version info from /temporary/xerces-c_2_5_0-redhat_72-icc_71//inc
lude/xercesc/util/XercesVersion.hpp
Checking to see if libxerces is in your library path…Success!!
Using Xerces-C version: 2.5.0
Processing hints file hints/linux.pl
Writing Makefile for Handler
Writing Makefile for XML::Xerces
********************************************************************************************************
The problem arises when I try to make the file
********************************************************************************************************
[[email protected]]# make
make[1]: Entering directory `/downloads/XML-Xerces-2.5.0-0/Handler’
make[1]: Leaving directory `/downloads/XML-Xerces-2.5.0-0/Handler’
icc -c -I. -IHandler -I/temporary/xerces-c_2_5_0-redhat_72-icc_71//include -w –
DXML_USE_NATIVE_TRANSCODER -DXML_USE_INMEM_MESSAGELOADER -DXML_USE_PTHREADS -DXM
L_USE_NETACCESSOR_SOCKET -D_REENTRANT -DDEBIAN -D_GNU_SOURCE -O -DVERSION=\”2.
5.0-0\” -DXS_VERSION=\”2.5.0-0\” -fPIC “-I/usr/lib/perl5/5.8.0/i386-linux-thread
-multi/CORE” Xerces.cpp
/bin/sh: line 1: icc: command not found
make: *** [Xerces.o] Error 127
**********************************************************************************************************
Solution: /bin/sh: line 1: icc: command not found :Error “make” for a Installing a Perl Module
Hi 🙂
ICC is the Intel compiler for linux http://www.intel.com/software/products/compilers/clin/
The module installer detected that instead of gcc (GNU C Compiler) which is what you should have.
You should check if you have GCC installed, if you do not, then install it first.
When you DO have GCC installed:
1. Try issuing the command:
export CC=gcc
before you run the makefile.
2. How about a nice, ugly symlink?
ln -s /usr/bin/gcc /usr/bin/icc
This will give the build script a fake icc that actually points to gcc. I didn’t see any parameters that gcc does not support, so it should work.
3. Edit Makefile.PL and /temporary/xerces-c_2_5_0-redhat_72-icc_71//src/xercesc/config.status .
Look for lines that mention icc and see why it detected it instead of gcc
4. Make an alias
alias icc=gcc
One of them should work.
Enjoy!
PS: To install GCC – get the RPM file from the CD (called gcc-x.xx.-…rpm x’s are version numbers).
Issue: rpm -Uvh gcc-xx.xx.x.xx.x.x..
It will probably compain about dependencies – you should copy and install them in the same manner.