how does icc work with kernel?
The new release of intel c++ compiler 7.1 is said to be much more compatible with gnu c extentions and gcc binaries.The only detailed doc i can got on google is some pdf stuff from intel, which is about the version 6.0.http://www.intel.com/software/products/compilers/c60l/techtopics/LinuxCompilersCompatibility60.pdf
A successful internal test on compiling linux kernel 2.4.17 is mentioned in that pdf. in the contrary, some claimed in LFS mailing list that 's impossible to compile kernel w/ 6.0. A little modification I guess should have done before the intel people did the internal test.
come back to 7.1. w/ the more compatibility, is there any possible to do the kernel with the new versioin? I can't get any reports on this, so Mr. Dragonfly can help some.? many thx
PS: went thru your web page, you really have tons of papers, PF PF. :) en? where u get my homepage link? i do not remember i post here.
i think u can try it, why not? and tell me the result, i do not have icc here I have not tried it coz got a time out when openning the first step to evaluation download, the survey page.
http://www.intel.com/software/products/compilers/clin/eval.htm
can't click thru here, you can give it a try. try this one, i am downloading
http://gentoo.oregonstate.edu/distfiles/l_cc_p_7.1.006.tar oh, thx alot, it even can't be found on edonkey, which only has 7.1 for win finally I get thru that survey page w/IE:?and received a license file. the cpp comipler was also installed all right w/ the lisence file. however when i run the icc alone like
doooom $ icc
got :
/usr/lib/crt1.o: In function `_start':
/usr/lib/crt1.o(.text+0x18): undefined reference to `main'
configure the default compiler as:
export LD=xild
export AR=xiar
export CC=icc
export CXX=icc
and try some linux code to compile, in the "./configure" stage, got:
checking for C compiler default output... configure: error: C compiler cannot create executables
how about your icc?
ps: if using gentoo, you can emerge it. yes, i emerge it, that is why i know where to download. but i do not have lic file. i have to get one.
i already get one lic file and my icc works now
dragonfly doc # icc
iccbin: Command line error: no files specified; for help type "iccbin -help"
on there support site has faq for u problem. http://www.intel.com/software/products/compilers/techtopics/LinuxCompilersCompatibility702.pdf is the new version of that pdf.
http://lwn.net/Articles/13207/ is a patch for 2.5.43.
http://lwn.net/Articles/14293/ i send an email to intel to ask for the 2.4.20 patch, but no reply. anyway, i use the icc to compile the alsa-tools-0.93, some are ok, and some have problem. becuase linux kernel use some nonstandard c features that gcc supports while icc not support. if u have interest, u can try that 2.5.43 patch first. the /usr/lib/crt1.o error is due to my old bash. cz it doesnotsupport the parameter -a for exec. I deleted the -a '<path" following the exec in both icc and icpc, when the problem solved.
configure error is some kind of stupid, i forget to unset the cflag and cxxflag for gcc. icc does not recognize -march and gives no out put.
the compiler works perfectly, when i tried to compile 'distcc', which is a simple package w/ only thousands of lines of code.
thx for the compability doc, it's said in it that icc works well on 2.4.17. it will be perfect if the versioni is 2.4.18. :(
many iptables patches need >=2.4.18 , so does the traffic control patches.
http://lwn.net/Articles/14293/ is the patch for 2.5.45. I'll figure out that tnght.actually 2.5.45 supports much better hyper-threading than 2.4 series. icc know -march, c&p from man icc
-march=<cpu> Generate code excusively for a given <cpu>
pentiumpro -- Pentium(R) Pro and Pentium(R) II processor
instructions
pentiumii -- MMX(TM)instructions
pentiumiii -- Streaming SIMD Extensions
pentium4 -- Pentium(R) 4 New Instructions
-mcpu=<cpu> Optimize for a specific cpu
pentium -- Optimize for Pentium(R) processor
pentiumpro -- Optimize for Pentium(R) Pro, Pentium(R) II
and Pentium(R) III processors
pentium4 -- Optimize for Pentium(R) 4 processor
why u need to stick to icc? hehe, thx
march=pentium3
this's gcc set.
littles diff. from icc's pentiumiii yes, but funny. mine is p4, so no problem.:wink: the 2.4.45 patch installed alright. to let kernel use icc, I modified Makefile to change gcc and g++ to icc.
however when make menuconfig, it tells
$ make menuconfig
icc -Wp,-MD,scripts/.fixdep.d -O1 -o scripts/fixdep scripts/fixdep.c
ld: unrecognized option '--compile_dependencies'
ld: use the --help option for usage information
make: *** 4└N⎽ 1
make: *** 4└N⎽ 2
do you meet the same stuff?
like to know whether my binutils is too old for icc. u also need changeLD to xild, andAR to xiar
页:
[1]
2